Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Uzupełnianie tabeli z bazy MySQL
Forum PHP.pl > Forum > Przedszkole
bosh
Hi!
Pragnę z bazy wyciągnąć dane i włożyć je do tabeli, tak, by co druga linia była innego koloru - już jestem blisko, ale wyświetlam mi linijki w różnych kolorach, ale z tą samą treścią... Linijek jest tyle ile wynosi $znaleziono, nie wiem gdzie robię błąd, że mi wykonuje pętlę nie przeskakując do kolejnych danych z bazy...


  1. <?php
  2. include("logowanie.cfg");
  3. $link = mysql_connect("$dbhost","$dbuser","$dbpasswd") or die(mysql_error());
  4.  
  5. $sql = 'SELECT `szkolenia`.`data`, `szkolenia`.`sdata`, `szkolenia`.`miasto`, `szkolenia`.`miejsce`'
  6. . ' FROM szkolenia WHERE data > CURDATE()'
  7. . ' ORDER BY `szkolenia`.`data` ASC LIMIT 0, 30';
  8.  
  9. print "<table cellspacing=\"2\" cellpadding=\"2\" align=\"center\" border=\"1\"><tr><th>data</th><th>temat szkolenia</th><th>miejsce</th><th>info dodatkowe</th></tr>";
  10.  
  11. $wykonaj = mysql_query($sql);
  12. $znaleziono = mysql_num_rows($wykonaj);
  13. while($wiersz = mysql_fetch_array($wykonaj))
  14. {
  15. for($i=0;
  16. $i<$znaleziono; $i++)
  17. {
  18. if($i=="0")
  19. { $kolor="kolor1"; }
  20. else
  21. { $kolor="kolor2"; }
  22. print "<tr bgcolor=".$kolor."><td>".$wiersz['data']."</td><td>".$wiersz['sdata']."</td><td>".$wiersz['miasto']."</td><td>".$wiersz['miejsce']."</td></tr>";
  23. }
  24.  
  25. }
  26. print "</table>";
  27.  
  28. ?>
  29.  
tehaha
wywal tą pętle for i zrób:
  1. $i=1;
  2.  
  3. while($wiersz = mysql_fetch_array($wykonaj))
  4. {
  5.  
  6. if(is_int($i/2)
  7. {
  8. $kolor = "kolor1";
  9. }else
  10. {
  11. $kolor = "kolor2";
  12. }
  13.  
  14. //tutaj te dane
  15.  
  16. ++$i;
  17. }
bosh
Wyskakuje Parse error: syntax error, unexpected '{' w linii środkowej
  1. if(is_int($i/2)
  2. {$kolor = "kolor1";}
  3. else


więcej kodu:
  1. $wykonaj = mysql_query($sql);
  2. $i=1;
  3.  
  4. while($wiersz = mysql_fetch_array($wykonaj))
  5. {
  6. if(is_int($i/2)
  7.  
  8. {$kolor = "kolor1";}
  9. else
  10. {$kolor = "kolor2";}
  11. print "<tr bgcolor=".$kolor."><td>".$wiersz['data']."</td><td>".$wiersz['sdata']."</td><td>".$wiersz['miasto']."</td><td>".$wiersz['miejsce']."</td></tr>";
  12. ++$i;
  13. }

tehaha
bo tam brakowało nawiasu ) :
  1. <?php
  2.  
  3. $wykonaj = mysql_query($sql);
  4. $i=1;
  5.  
  6. while($wiersz = mysql_fetch_array($wykonaj))
  7. {
  8. if(is_int($i/2)){
  9. $kolor = "kolor1";
  10. }else {
  11. $kolor = "kolor2";
  12. }
  13. print "<tr bgcolor=".$kolor."><td>".$wiersz['data']."</td><td>".$wiersz['sdata']."</td><td>".$wiersz['miasto']."</td><td>".$wiersz['miejsce']."</td></tr>";
  14. ++$i;
  15. }
  16.  
  17. ?>
zend
Ja mam łądniejszy sposób
  1. $i = 0;
  2. while($row = mysql_fetch_row($result))
  3. {
  4. echo "<tr bgcolor='". ($i%2 == 0 ? 'red' : 'blue') ."'>"; //zamiast dzielenia modulo i operator trójskładniowy
  5. $i++;
  6. }
bosh
Zend - mi coś nie tak poszło i nie udało się Twojego pomysłu odpalić sad.gif
Tehaha - dziękuję, wcisnąłem "pomógł" 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.