Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: po 3 zdjecia na wiersz
Forum PHP.pl > Forum > Przedszkole
qq
Witam mam pytanie.
Robie galerię opartą na php. Jak zrobić zeby wyniki z bazy danych (zdjęcia) dzielil po 3 komórki w wierszu. Zdjęcia mam na serwerze a ścieżki w bazie
Potem daje to w pętle i wczytuje wlasnie te śćieżki z bazy i jak zrobic zeby dzielił po 3 zdjęcia na wiersz.
Z gory thx za pomoc!
qq
wydaję mi się ze trzeba użyć pętli for ale w jaki sposób?

chodzi mi o to żeby wyświetlało mi tak
  1. <TR><TD>obrazek1</TD> <TD>obrazek2</TD> <TD>obrazek3</TD></TR>
  2. <TR><TD>obrazek4</TD> <TD>obrazek5</TD> <TD>obrazek6</TD></TR>
  3. <!-- itd... -->
crash
Np jeśli $i to licznik petli wyświetlającej zdjęcia to:
  1. <?php
  2. if(($i % 3) == 0)
  3.  echo '<br />';
  4. ?>

No a jak ma być na tabeli to zamiast <br /> dajesz </tr><tr> i musisz na początku pętli dać pierwsze otwierające <tr> a na końcu zamykające.
sf
  1. <?php
  2.  
  3. /* aTab - tablica zawierajaca komorki, icols - ile kolumn, iStart - od ktorego momentu wyswietlac, icount - maksymalna liczba wyswietlen */
  4. function htmltable($aTab, $iCols, $iStart = 0, $iCount = 0) {
  5. $sEmpty = '&nbsp;';
  6.  
  7. if($iCount == 0 || $iStart > count($aTab)) {
  8. $iCount = count($aTab);
  9. }
  10. if($iCount < $iCols) {
  11. $iCount = $iCols;
  12. }
  13. if(count($aTab) < $iCount + $iStart) {
  14. $iCount = count($aTab) - $iStart;
  15. }
  16.  
  17. $iRest = $iCols - $iCount % $iCols;
  18.  
  19. while($iRest--) {
  20. array_push($aTab, $sEmpty);
  21. }
  22.  
  23. echo '<table>';
  24. for($i = $iStart; $i < $iCount + $iStart; $i += $iCols) {
  25. echo '<tr>';
  26. for($j = 0; $j < $iCols; ++$j) {
  27. echo '<td>'.$aTab[$i+$j].'</td>';
  28. }
  29. echo '</tr>';
  30. }
  31. echo '</table>';
  32. }
  33.  
  34. ?>


taka funkcja, niedawno napisałem, mozna uznac, ze jest wersja devloperska jeszcze, mozesz poprawic jak Ci sie uda winksmiley.jpg
qq
thx
qq
Ale te podpowiedzi nic mi nie dały sad.gif
  1. <?php
  2. $result = $db->sql_query($sql);
  3. while($row = $db->sql_fetchrow($result)){
  4. //tutaj chce by dzielil wyniki po 3 <TD></TD> NA jedno <TR></TR>
  5. ?>
sf
No to zajmij się szydełkowaniem skoro nie potrafisz.

  1. <?php
  2. $aRows = array();
  3. $result = $db->sql_query($sql);
  4. while($row = $db->sql_fetchrow($result)) {
  5. $aRows[] = $row;
  6. }
  7. htmltable($aRows, 3); // dodaj oczywiscie ta funkcje co wyzej napisalem do kodu
  8. ?>
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.