Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Wyświetlanie kategori i podkategorii w 3 kolumnach
Forum PHP.pl > Forum > Przedszkole
ghastblood
Witam,
w jaki sposób najlepiej wyświetlić kategorie wraz z podkategoriami w 3 kolumnach obecnie mam kod wyświetlający wszystko w jednym ciągu.
  1. $result = get_query("SELECT * FROM kategorie WHERE kat_rodzic = '0'");
  2. while ($data = get_array($result)) {
  3. echo "<b>".$data['kat_nazwa']."</b>";
  4. $result1 = get_query("SELECT * FROM kategorie WHERE kat_rodzic='".$data['kat_id']."' ");
  5. while ($data1 = get_array($result1)) {
  6. echo'<li>-'.$data1['kat_nazwa'] . '</li> ' ;
  7. }
  8. }


get_query = mysql_query
get_array = mysql_fetch_assoc
ylk
Naucz się poprawnie formatować kod.

Zainteresuj się funkcją mysql_num_rows().
Zwraca ona ilość wierszy w zapytaniu. Dzięki temu będziesz wiedział ile jest elementów, podzielisz sobie na 3 i zrobisz 3 kolumny.
ghastblood
w jaki sposób mam to podzielić na 3?

proszę o pomoc dalej sobie nie poradziłem z tym problemem

Udało mi się znaleźć taki kod na forum

  1. <?php
  2.  
  3. $wynik = mysql_query('select * from kategorie order by nazwa');
  4. echo '<table>';
  5. $i = 0;
  6. while ($row = mysql_fetch_assoc($wynik)) {
  7. if ($i == 3)
  8. {
  9. echo '</tr>';
  10. $i = 0;
  11. }
  12. if ($i == 0)
  13. echo '<tr>';
  14. $i++;
  15. echo '<td>ala</td>';
  16. }
  17. if ($i != 0)
  18. echo '</tr>';
  19.  
  20. echo '</table>';
  21.  
  22. ?>


tylko jak dodać do niego jeszcze subkategorie pod kategoriami

dodałem coś takiego
  1. $wynik = mysql_query('select * from fusion_classfield WHERE classfield_parent = "0"');
  2. echo '<table>';
  3. $i = 0;
  4. while ($row = mysql_fetch_assoc($wynik)) {
  5. $wynik1 = mysql_query('select * from fusion_classfield WHERE classfield_parent = "'.$row['classfield_id'].'"');
  6. while ($row1 = mysql_fetch_assoc($wynik1)) {
  7. if ($i == 3)
  8. {
  9. echo '</tr>';
  10. $i = 0;
  11. }
  12. if ($i == 0)
  13. echo '<tr>';
  14. $i++;
  15. echo '<td>'.$row['classfield_name'].'</td></tr>';
  16. echo '<tr><td><li>'.$row1['classfield_name'].'</li>';
  17. }
  18. }
  19. if ($i != 0)
  20. echo '</tr>';
  21.  
  22. echo '</table>';


ale to wyświetla kategoria > subkategoria kategoria > subkategoria a powinno być kategoria > subkategoria, subkategoria

Czy naprawdę nikt nie może mi pomóc
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.