Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wyświetlanie wynikow w pięciu kolumnach
Forum PHP.pl > Forum > Przedszkole
sereczyn
Witam,

Jak mogę wyświetlić zawartość tabeli w 5 kolumnach :

1 2 3 4 5
6 7 8 9 10
itp.
gothye
można jaśniej ?
sereczyn
Normalnie zawartość tabeli można wyświetlić tak:

1
2
3
4
5
6
7
8
9
10
itp

a ja potrzebuje wyświetlić ją w pięciu kolumnach :
1 2 3 4 5
6 7 8 9 10
itp

Mam skrypt który też wyświetla zawartość tabeli w kolumnach :

1 5 9
2 6 10
3 7
4 8
Zyx
1. A co to ma wspólnego z bazami danych?
2. Można jaśniej? Może byś tak łaskawie podał, w czym wyświetlić, skąd wyświetlić itp. itd?
yalus
do wydrukowania danych np. uzyj dwoch petli
sereczyn
Cytat
1. A co to ma wspólnego z bazami danych?
2. Można jaśniej? Może byś tak łaskawie podał, w czym wyświetlić, skąd wyświetlić itp. itd?

Dane pobierane są z bazy danych MySQL, chce je wyświetlić za pomocą skryptu PHP na stronie internetowej. Wydawało mi się to jasne, skoro napisałem to na forum PHP w dziale MySQL. Jestem tutaj nowy, następnym razem będę pisać jaśniej. Jeżeli łaskawie będziesz miał ochote mi pomóc, będę Ci wdzięczny.
Standardowo dane pobrane z bazy danych można wyświetlić w pionowej kolumnie, tak już mowiłem potrzebuje wypisąc zawartość tabeli w której rekordy są ułożone poziomo w 5 kolumnach.
Zyx
Pytałem, ponieważ zadałeś to pytanie w dziale "MySQL", tymczasem Twój problem poza faktem, że pobierasz dane z MySQL-a nie ma nic z bazami danych wspólnego. Dane równie dobrze mógłbyś czytać z pliku, albo mieć na sztywno zdefiniowane w kodzie i ani trochę nie zmieniłoby to rozwiązania. Standardowo dane pobrane z bazy nigdzie się nie wyświetlają, one są tylko pobrane, a co z nimi zrobisz, to już jest Twój interes. Masz dane i chcesz je wyświetlić w pięciu kolumnach, natomiast absolutnie nie interesuje nas w tym momencie, SKĄD je masz. Umiejętność wydzielania konkretnych czynności/procesów z kodu przyda się nie tylko przy pisaniu postów, ale też przy programowaniu, dlatego poćwicz myślenie nieco innymi kategoriami.

Problem można rozwiązać na dwa sposoby. Pierwszy to użycie licznika pętli. Zwiększasz go z każdą iteracją i przed rozpoczęciem przetwarzania elementu sprawdzasz wynik dzielenia modulo przez 5. Jeśli jest on równy 0, oznacza to, że właśnie przetworzyłeś piątkę elementów i zaczynasz przetwarzać kolejną. Wystarczy wtedy wstawić zmianę wiersza. Drugi sposób to zagnieżdżenie pętli - pierwsza iteruje po wszystkich elementach, wewnętrzna ma licznik iterujący od 0 do 4. Dodatkowo przy każdej iteracji zwiększa licznik zewnętrznej pętli. W wewnętrznej pętli dajesz kod wyświetlający pojedynczy element, a wokół całej pętli dajesz znaki początku i końca wiersza. Jeśli wyświetlasz to w tabeli HTML, w końcowym wierszu musisz jeszcze dopełnić wszystko pustymi komórkami tak, aby ilość wszystkiego była wielokrotnością 5.
Scalak
może mniej pedagogicznie od Zyx'a ale to jedna z Jego propozycji w działaniu:
  1. <?
  2. echo "<table border='1'>";
  3. $i=0;
  4. while($i<=27){
  5. if($i%5==0) echo "<tr>";
  6. echo "<td>".($i+1)."</td>";
  7. $i++;
  8. }
  9. echo "</table>";
  10. ?>

zadanie dodatkowe: "rozwiąż to 2gą metodą opisaną przez Zyx'a"
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.