Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Pobieranie odpowiedniego ID
Forum PHP.pl > Forum > Przedszkole
matti9410
Witam mam problem ponieważ nie wiem w jaki sposób mogę pobrać ID danego zdjęcia żeby po naciśnięciu "Następne" wczytywało kolejne zdjęcie. Kod który wyświetla mi zdjęcia wygląda tak.

  1. <?php
  2. include 'admin/config.php';
  3. $page = 3;
  4. include 'templates/header.php';
  5.  
  6. $id_kategorii = $_GET['portfolio'];
  7. $id = $_GET['id'];
  8.  
  9. db_connect();
  10. $zapytanie = mysql_query('SELECT * FROM zdjecia WHERE id = '.$id.'');
  11. while ($row = mysql_fetch_row($zapytanie)) {
  12. $link = $row[3];
  13. }
  14.  
  15. if(mysql_query('SHOW COLUMNS FROM zdjecia'))
  16. {
  17. $wynik = mysql_query ('SELECT count(*) AS ilosc FROM zdjecia WHERE id_kategorii=' .$id_kategorii. '');
  18. $wiersz= mysql_fetch_array($wynik);
  19. $ilosc_wierszy=$wiersz['ilosc'];
  20. }
  21. else
  22. {
  23. $ilosc_wierszy = 0;
  24. echo "Brak zdjęć!";
  25. }
  26. db_close();
  27.  
  28. if ($ilosc_wierszy > 1) {
  29. if ($id == 1) {
  30. echo 'Poprzednie';
  31. }
  32. else{
  33. echo '<a href="photo.php?portfolio='. ($id_kategorii) .'&id='. ($id-1) .'">Poprzednie</a>';
  34. }
  35.  
  36. echo ' / ';
  37.  
  38. if ($id == $ilosc_wierszy) {
  39. echo 'Następne';
  40. }
  41. else{
  42. echo '<a href="photo.php?portfolio='. ($id_kategorii) .'&id='. ($id+1) .'">Następne</a>';
  43. }
  44. echo "<span class=\"right\">($ilosc_wierszy z $ilosc_wierszy)</span>";
  45. echo "<br></br>";
  46. }
  47.  
  48. echo '<center><img src="'. ($link) .'"></center></br>';
  49. include 'templates/footer.tpl';
  50. ?>
jakub.drag
Tak na szybko, nie wiem czy zrozumiałem:
zwiększasz sobie po prostu odpowiednie id (podejrzewam, że to przekazywane GETem) o 1, czyli
  1. $kolejne = $_GET['id'] + 1;
  2. echo '<a href="?id='.$kolejne.'">Następne</a>';

Michael2318
@jakub.drag, niekoniecznie. Co jeśli jedno zdjęcie usunie, np. za pośrednictwem Panelu Administracyjnego bo mu nie będzie odpowiadało? Wtedy mamy dziurę w bazie:

Cytat
1 - zdjecie001.jpg
2 - zdjecie002.jpg
---
---
5 - zdjecie005.jpg


Więc Twój sposób ma rację bytu póki wszystko jest cacy.

Do autora tematu - w zapytaniu SQL należałoby zamieścić taki warunek:

  1. WHERE id > $id;


gdzie zmienna $id to id ostatniego przeglądanego zdjęcia.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.