Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: dzielenie wyników z mysql
Forum PHP.pl > Forum > PHP
mb83
Witam,
Mam bazę składająć się z dwóch pól: id i nazwa
Aktualnie jest tam 150 rekordów.
Potrzebuję wyświetlić to w tabeli po 3 kolumny ale niewiem jak wywołać zapytanie sql i jaki kod php ma być.
Pozdawiam i dzięki za ew. pomoc.
alegorn
jaki kod?
poprawny!


j.
PiNkOs
Łączenie z bazą danych

+

Wybieranie rekordów
mb83
Stronka którą podałeś ta druga (wybieranie rekordów) podaje nam rozwiązanie gdy pobieramy dane z 3 tablic (np. id, nazwa, autor czy jakos tam) a ja potrzebuje wyświetlić w 3 kolumnach wyświetlić dane z 1 kolumny (np $wiersz[1]).
i tu sie dla mnie zaczynaja schody? jak taki kod napisac?
greycoffey
Zilustruj to co chcesz osiągnąć, podejrzewam, że nikt oprócz Ciebie do tej pory tego nie wie.
mb83
proszę bardzo, ilustruję:
|$row[2]| |$row[2]| |$row[2]|
|$row[2]| |$row[2]| |$row[2]|
|$row[2]| ...
i tak dalej, ważne żeby było w 3 kolumnach

szok
Ale w jaki sposób to ma być?

|rekord1|rekord2|rekord3|
|rekord4|rekord5|rekord6|

Czy:

|rekord1|rekord3|rekord5|
|rekord2|rekord4|rekord6|
mmmmmmm
Zalążek kodu:
  1. $ilosc=5; // ilość przedziałów
  2. $teskty=array();
  3. $i=0;
  4.  
  5. $query='SELECT nazwisko FROM osoby ORDER BY 1';
  6. $result=mysql_query($query);
  7.  
  8. if($result)
  9. {
  10. while($row=mysql_fetch_array($result))
  11. {
  12. $teksty[$i%$ilosc].='<span style="display:block;">'.$row['nazwisko'].'</span>';
  13. $i++;
  14. }
  15. }
alegorn
To elementarne, Watsonie!
dodatkowe petla for dla c=3; c>0;--c
mb83
Cytat(szok @ 9.08.2012, 14:44:28 ) *
Ale w jaki sposób to ma być?

|rekord1|rekord2|rekord3|
|rekord4|rekord5|rekord6|

Czy:

|rekord1|rekord3|rekord5|
|rekord2|rekord4|rekord6|


pierwsza opcja
czyli

|rekord1|rekord2|rekord3|
|rekord4|rekord5|rekord6|
szok
Cytat(mb83 @ 9.08.2012, 13:29:29 ) *
pierwsza opcja
czyli

|rekord1|rekord2|rekord3|
|rekord4|rekord5|rekord6|


Czyli robisz tak:

Lecisz po wszystkich elementach i co 3 element dajesz nową linie, wiersz cokolwiek. Mniej więcej tak:

  1. <table>
  2. <tr>
  3. <?php
  4. $i = 1;
  5. foreach ($list as $item) {
  6. if ($i % 3 == 0) {
  7. echo '</tr><tr>';
  8. $i = 1;
  9. }
  10. echo '<td>'.$item.'</td>;
  11. $i++;
  12. }
  13. ?>
  14. </table>
  15.  


Orientacyjnie coś takiego, oczywiście musisz swoj kod napisać, to jest tylko przykład jak to można rozwiązać, ale w widokach powinno być to jakimś systemem szablonów zrobione smile.gif Lub <?php foreach(): ?> <?php endforeach; ?> ...
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.