Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][MySQL][PHP]Wyświetlanie rekordów w tabeli
Forum PHP.pl > Forum > Przedszkole
danussiaaa
Mam następujacy problem: Jak wyświetlić rekodry z Mysql'a w tabeli która ma 3 kolumny,liczba wierszy zależny od ilości rekodow w bazie.Jak kolwiek próbowałam zawsze otrzymywałem tylko powielone 3 pierwsze rekordy.Może mi ktoś pomóc?
wookieb
Temat: linkiKursy dla pocztkujcych
marian2299
Potrzebujesz tego
danussiaaa
No super,dzieki za ogolnikowe info na ten temat,ale niech mi ktos chociaz podpowie w ktora strone mam sie udac :|
Bo sama juz niewiem czy to wina mojego skryptu php czy daje ciala w zwyklym html'u sad.gif

Moze by nie byc goloslowna przedstawie czesc mojego skryptu:
  1. $zapyt="SELECT * FROM testowa";
  2. $wynik="mysql_query($zapyt,$pol);
  3. while($wiersz=mysql_fetch_assoc($wynik))
  4. {
  5. echo ("<tr><td>$wiersz['link']</td><td>$wiersz['link']</td><td>$wiersz['link']</td></tr>");
  6. }


Prosze niech mi ktos podpowie w jakiej czesci mam szukac bledu
Fifi209
  1. echo '<tr><td>$wiersz['link']</td></tr>';

tak to ma być. ;>
JoShiMa
Ponieważ rekord ma podobno trzy kolumny to raczej tak
  1. echo '<tr><td>$wiersz['kolumna1']</td><td>$wiersz['kolumna2']</td><td>$wiersz['kolumna3']</td></tr>';

danussiaaa
Otóż nie rekord posiada 1 wartość.I cały sęk polega na tym ,że nie potrafię wyświetlić kolejnych rekordów w tabeli złożonej z 3 kolumn
Fifi209
Cytat(danussiaaa @ 13.08.2009, 01:37:37 ) *
Otóż nie rekord posiada 1 wartość.I cały sęk polega na tym ,że nie potrafię wyświetlić kolejnych rekordów w tabeli złożonej z 3 kolumn


Pokaż więc strukturę ów tabeli i rekordy, które w niej przetrzymujesz.
danussiaaa
Tabela w mysql'u ma za zadanie przechowywać linki do wyświetlanych zdjęć.

  1. CREATE TABLE testowa
  2. (
  3. id int AUTO_INCREMENT PRIMARY KEY NOT NULL,
  4. link char(10) NOT NULL
  5. )


A tabela html w której ma się to wyswietlać ma finalnie wygladać tak:

  1. <tr> <td>rekord1</td><td>rekord2</td><td>rekord3</td> </tr>
  2. <tr> <td>rekord4</td><td>rekord5</td><td>itd.</td> </tr>
  3. <tr> <td>itd.</td><td>itd.</td><td>itd.</td> </tr>
JoShiMa
Cytat(danussiaaa @ 13.08.2009, 02:37:37 ) *
Otóż nie rekord posiada 1 wartość.I cały sęk polega na tym ,że nie potrafię wyświetlić kolejnych rekordów w tabeli złożonej z 3 kolumn


Takie buty...

  1. echo '<table>';
  2. $licznik = 0;
  3. echo '<tr>'
  4. while($wiersz=mysql_fetch_assoc($wynik)){
  5. if($licznik ==0) echo '<tr>';
  6.  
  7. echo "<td>$wiersz['link']</td>";
  8. $licznik ++;
  9.  
  10. if($licznik ==3){
  11. echo '</tr>'
  12. $licznik = 0;
  13. }
  14.  
  15. }
  16. if ($licznik !=0){
  17. for($i=0; $i<= (3-$licznik){
  18. echo '<td></td>';
  19. }
  20. echo '</tr>';
  21. }
  22. echo '</table>';



Nie testowałam, mogą być błędy.
PS przestań wreszcie używać nawiasów w echo smile.gif To takie nieeleganckie.
Fifi209
joshima to czy używa nawiasów czy nie to tylko jego sprawa. (ja też preferuję bez)

Co do Twojego kodu zamiast zerować licznik etc. możesz użyć % zamiast /
JoShiMa
Cytat(fifi209 @ 13.08.2009, 14:09:10 ) *
Co do Twojego kodu zamiast zerować licznik etc. możesz użyć % zamiast /


To prawda tak jest bardziej elegancko, ale trochę trudniej sprawdzać kiedy dać początek a kiedy koniec wiersza smile.gif
danussiaaa
Bardzo dziekuję za pomoc smile.gif
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.