Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] wyświetlanie danych z bazy w formie tabeli dwu kolumnowej
Forum PHP.pl > Forum > Przedszkole
bialko0019
Witam, zastanawiam się nad rozwiązaniem skryptu, który pobierając rekordy z bazy danych wyświetla je w formie tabeli, ale w układnie dwóch kolumn, na przykład jeśli mam 5 rekordów to wyświetla je po 2 komórki w jednym wierszu, następne w dwóch i tak dalej, jeśli zaś została jedna wyświetla jedną w osobnej linii ?

Coś myślę nad wprowadzeniem dodatkowej zmiennej, która by sprawdzała, czy już wyświetlono 2 rekordy w wierszu czy nie, ale nie wiem jak z grubsza to ogarnąć winksmiley.jpg

Pozdrawiam!

Już rozwiązane, temat do zamknięcia
barthpl
Nie wiem czy dobrze zrozumiałem ale chodzi ci o taki kod questionmark.gif Zmienna $records zawiera wszystkie rekordy pobrane z tabeli.
  1. echo '<tr>';
  2. for( $i = 0; $i < count($records); ++$i )
  3. {
  4. echo sprintf( '<td>%s</td>', $records[$i] );
  5. if( $i > 0 && $i % 2 == 0 ) // jeżeli ma być więcej elementów w jednym wierszu zmień 2 na inną wartość
  6. echo '</tr><tr>';
  7. }
  8. echo '</tr>';


Rozwiązaniem lepszym jest to rozwiązać na divach.
  1. echo '<div class="container">';
  2. for( $i = 0; $i < count($records); ++$i )
  3. echo sprintf( '<div class="item">%s</div>', $records[$i] );
  4. echo '</div>';

div.item powinien mieć ustawione float: left i określoną szerokość (oraz wysokość co by nie było żadnych krzywych problemów) a div.container overflow: hidden. Ilosć elementów określasz poprzez styl - czyli ile razy item zmieści się w container.
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.