Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL] Galeria, problem z łamaniem wiersza
Forum PHP.pl > Forum > Przedszkole
Darekxp
Witam! Znalazłem skrypt który powinien wyświetlać zdjęcia po 3 na wiersz i tworzyć nowy wiersze jeśli mamy więcej zdjęć w bazie. coś w stylu jak to jest na nk, ogólnie myśle wiadomo o co chodzi. wyświetla mi tylko 3 rekrdy w jednym wierszu. gdzie jest błąd;-)? Za pomoc z góry dzięki

  1. <?php
  2.  
  3. $album = $_GET['numer'];
  4.  
  5. //SPRAWDZAMY, CZY JEST POKAZANY NUMER ZDJĘCIA, KTÓRE CHCEMY OBEJRZEĆ
  6. if (!isset($_GET['numer'])) //jeśli nie jest zdefiniowane zdjęcie, które mamy pokazać...
  7. {
  8. $zapytanie=mysql_query("SELECT * FROM galeria WHERE galeriaAlbum='$album' LIMIT 1"); //...to pobierz dane o pierwszym zdjęciu z tabeli
  9. }
  10. else
  11. {
  12. $zdj=$_GET['numer'];
  13. $zapytanie=mysql_query("SELECT * FROM galeria WHERE galeriaAlbum='$album"); //...w przeciwnym wypadku pokaż dane zdefiniowanego zdjęcia
  14. }
  15.  
  16. //I WYŚWIETLAMY TABELKĘ (NA RAZIE 1 WIERSZ)
  17.  
  18. echo '<table>'; //wyświetlamy tabelkę
  19. echo '<tr border="0">';
  20. echo '<td colspan="3" align=”center”>';
  21.  
  22.  
  23. //$dane=mysql_fetch_array($zapytanie); //przekształć zapytanie w tablicę
  24.  
  25. //echo '<img src=http://site.pl/galeria/"'.$row['galeriaFoto'].'" width=400>'; //wyświetl zdjęcie
  26. echo '<br>'; //enterek
  27. echo '<b>'.$row['galeriaOpis'].'</b>'; //i opis do zdjęcia
  28. echo '</td></tr>'; //zamknij komórkę i wiersz
  29.  
  30. //A TERAZ POZOSTAŁE WIERSZE (PO 3 KOMÓRKI W WIERSZU)
  31.  
  32. $zapyanie=mysql_query("SELECT * FROM galeria WHERE galeriaAlbum='$album'"); //znowu pobieramy wszystko z bazy
  33. $il=mysql_num_rows($zapytanie); //sprawdzamy ile w tabeli jest zdjęć
  34. $wiersze=ceil($il/3); //i dzielimy to przez 3, z nadmiarem
  35.  
  36. for ($a=0;$a<$wiersze;$a++) //otwieramy pętlę, będzie się robiła tyle razy, ile jest wierszy
  37. {
  38. echo '<tr align=center>'; //wyświetlamy nowy wiersz
  39. $b=$a*3; //będą pobierane z tabeli po 3 zdjęcia
  40. $zapytanie="SELECT * FROM galeria LIMIT $b,3"; //zapytanie
  41. $a=mysql_query($zapytanie); //pobieramy po 3 zdjęcia
  42. while($row=mysql_fetch_array($a))
  43. {
  44. echo '<td>'; //otwieramy nową komórkę
  45. echo '<a href=http://site.pl/galeria/'.$row['galeriaId'].'><img src=http://site.pl/galeria/'.$row['galeriaFoto'].' border=0 width=100></a>'; //hiperłącze do zdjęcia + zdjęcie
  46. echo '</td>'; //zamykamy komórkę
  47. }
  48. echo '</tr>'; //zamykamy wiersz
  49. }
  50. echo '</table>'; //zamykamy tabelę
  51.  
  52. //mysql_close($link); //zamykamy połączenie z bazą danych
  53. ?>
joka2
Stary kotlet:

Zamień linię kodu 41 i 42 z:


  1. $a=mysql_query($zapytanie); //pobieramy po 3 zdjęcia
  2. while($row=mysql_fetch_array($a))

na:

  1. $akuku=mysql_query($zapytanie); //pobieramy po 3 zdjęcia
  2. while($row=mysql_fetch_array($akuku))



Prośba, dodajcie do tego paginacje i będzie super galeria smile.gif

Ehhh....

Działająca galeria:
  1. <?php
  2. require('LOGOWANIE DO BAZY');
  3.  
  4. $liczba_kolumn = 9; // to sobie zmieniamy...
  5. $zapytanie=mysql_query('SELECT * FROM galeria');
  6. $il=mysql_num_rows($zapytanie);
  7. $wiersze=ceil($il/$liczba_kolumn);
  8. echo '<table border="1">';
  9. for ($a=0;$a<$wiersze;$a++)
  10. {
  11. echo '<tr>';
  12. $b=$a*$liczba_kolumn;
  13. $zapytanie="SELECT * FROM galeria LIMIT $b,$liczba_kolumn";
  14. $pytanie=mysql_query($zapytanie);
  15. while($row=mysql_fetch_array($pytanie))
  16. {
  17. echo '<td>';
  18. echo '<img src="'.$row['miniatura'].'" border=0 width="100px">';
  19. echo '</td>';
  20. }
  21. echo '</tr>';
  22. }
  23. echo '</table>';
  24. ?>
mat-bi
Tak mnie to zastanawia... Dlaczego lubicie odkopywać tematy sprzed 2 lat?
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.