Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] nawigacja w php dla galerii zdjęć
tiko35
post
Post #1





Grupa: Zarejestrowani
Postów: 34
Pomógł: 0
Dołączył: 1.06.2008

Ostrzeżenie: (0%)
-----


staram sie zrobić nawigacje dla zdjęć, czyli przycisk "<<back" oraz przycisk "next>>"
Sortowanie mam na stronie po dacie dodania, więc robie tak:
  1. $prev = "SELECT id,nazwa,plik,id_kategorii,id_miejsca,id_daty,tytul,dodano FROM zdjecie WHERE id_kategorii=$id_kat AND dodano >'$dodano' LIMIT 1";
  2. $next = "SELECT id,nazwa,plik,id_kategorii,id_miejsca,id_daty,tytul,dodano FROM zdjecie WHERE id_kategorii=$id_kat AND dodano <'$dodano' LIMIT 1";
  3.  

i mam już w zaleznosci od bierzącego "dodano" dwa zapytania, dalej robie tak:
  1. echo '<div id="duze_zdjecie"><a href="index.php?nr=drug&id_kat='.$_GET['id_kat'].'"><img src="'.$images_dir.'/'.$_GET['plik'].'" border="0" /></a><div class="napis_duze">'.$_GET['tytul'].'</div></div>';
  2. $rezultat = mysqli_query($dbc,$next);
  3. $rezultat2 = mysqli_query($dbc,$prev);
  4. while($spr = mysqli_fetch_array($rezultat))
  5. {
  6. echo "<div class='nastepna'><a href='index.php?dodano={$spr['dodano']}&glob={$_GET['glob']}&plik={$spr['plik']}&nazwa={$spr["nazwa"]}&id_kat={$spr['id_kategorii']}&id_mie={$spr['id_miejsca']}&id_dat={$spr['id_daty']}&id=".$spr['id']."'>Następne&gt;&gt;</a></div>";
  7. }
  8. while($spr = mysqli_fetch_array($rezultat2))
  9. {
  10. echo "<div class='poprzednia'><a href='index.php?dodano={$spr['dodano']}&glob={$_GET['glob']}&plik={$spr['plik']}&nazwa={$spr["nazwa"]}&id_kat={$spr['id_kategorii']}&id_mie={$spr['id_miejsca']}&id_dat={$spr['id_daty']}&id=".$spr['id']."'>&lt;&lt;Poprzednie</a></div>";
  11. }

no ale niestety niedziala to dobrze, problemem pewnie tu sa dwie pętle while, jak ustalić jednoczesnie "back" i "next", tak zeby po przewinieciu na nastepne zdjecie zostały znowu ustalone nastepne next i back...
jesli ktoś mogłby pomoc bede wdzieczny, niby zapytania są dobre, tylko jak to wyswietlic i zsynchronizowac ;/
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
thek
post
Post #2





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




  1. $obec = "SELECT id,nazwa,plik,id_kategorii,id_miejsca,id_daty,tytul,dodano FROM zdjecie WHERE id_kategorii=$id_kat AND dodano ='$dodano' LIMIT 1";
  2. $prev = "SELECT id,nazwa,plik,id_kategorii,id_miejsca,id_daty,tytul,dodano FROM zdjecie WHERE id_kategorii=$id_kat AND dodano >'$dodano' LIMIT 1";
  3. $next = "SELECT id,nazwa,plik,id_kategorii,id_miejsca,id_daty,tytul,dodano FROM zdjecie WHERE id_kategorii=$id_kat AND dodano <'$dodano' LIMIT 1";
  4. $obecne = mysqli_query($dbc,$obec);
  5. $previous = mysqli_query($dbc,$prev);
  6. $after = mysqli_query($dbc,$next);
  7. if( $previous AND mysqli_num_rows( $previous ) ) {
  8. $p = mysqli_fetch_array($previous);
  9. echo "<div class='poprzednia'><a href='index.php?dodano={$p['dodano']}&glob={$_GET['glob']}&plik={$p['plik']}&nazwa={$p['nazwa']}&id_kat={$spr['id_kategorii']}&id_mie={$p['id_miejsca']}&id_dat={$p['id_daty']}&id=".$p['id']."'><<Poprzednie</a></div>";
  10. }
  11.  
  12. if( $obecne AND mysqli_num_rows( $obecne ) ) {
  13. $ob = mysqli_fetch_array($obecne);
  14. echo '<div id="duze_zdjecie"><a href="index.php?dodano='.$ob['dodano'].'&nr=drug&id_kat='.$_GET['id_kat'].'"><img src="'.$images_dir.'/'.$_GET['plik'].'" border="0" /></a><div class="napis_duze">'.$_GET['tytul'].'</div></div>';
  15. }
  16. if( $after AND mysqli_num_rows( $previous ) ) {
  17. $n = mysqli_fetch_array($rezultat);
  18. echo "<div class='nastepna'><a href='index.php?dodano={$n['dodano']}&glob={$_GET['glob']}&plik={$n['plik']}&nazwa={$n['nazwa']}&id_kat={$n['id_kategorii']}&id_mie={$n['id_miejsca']}&id_dat={$n['id_daty']}&id=".$n['id']."'>Następne>></a></div>";
  19. }
Tylko brakuje jeszcze filtrowania danych z GET... i sensowniej jakoś bym się zajął tym adresem... Po kiego tyle danych w adres pchać, skoro wystarczy id, a resztę można do bazy walnąć? Tylko sobie komplikujesz życie. Inna sprawa, że skakanie w echo między ' a " tylko Sprawia, że się gubisz kiedy którego używać, a kiedy go escape'wać. Mi się już tego nie chciało bardziej poprawiać więc zostawiłem jak było, tylko ewidentne błędy poprawiłem by działało, a przynajmniej powinno działać.

Ten post edytował thek 10.12.2009, 14:42:11
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 9.10.2025 - 08:30