Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP] Problem z wyświetlaniem danych z foreach()
Forum PHP.pl > Forum > Bazy danych > MySQL
Muskalek
Moja wiedza PHP nie jest zbyt rozległa i mimo długotrwałych poszukiwań nie udało mi sie odnaleźć rozwiązania problemu.

Mam nastepujący fragment kodu (połączenie z bazą zainicjowane, tabela wybrana, zmienna $nick zdefiniowana):
  1. $today = date("Y-m-d");
  2. $ind = mysql_query("SELECT * FROM tasks WHERE date = '$today' AND nick = '$nick' ORDER BY id ASC");
  3.  
  4. if (mysql_num_rows($ind) > 0)
  5. {
  6. $text = "<dl id='tasks'>\n<dt>Witaj $nick.</dt>\n<dt>Twoje zadania na dziś to:</dt>\n";
  7. foreach(mysql_fetch_assoc($ind) as $row)
  8. {
  9. $text .= "<dd><a href='" . $row['link'] . "'>". $row['name'] . " ustawione przez " . $row['setby'] . "</dd></a>\n";
  10. }
  11. $text .= "</dl>\n";
  12. }
  13. else
  14. $text = "Nie masz zadań na dziś";

Wszystko niby ładnie pięknie, ale przy uruchomieniu skryptu dostaję:
Warning: Invalid argument supplied for foreach() in XXX on line 26 (linia 26 to ta, gdzie rozpoczyna się foreach() ).

Wyczytałem, że jest to spowodowane nietablicowym argumentem "mysql_fetch_assoc($ind)", jednak przy użyciu print_r() otrzymuje coś takiego:
Cytat
Array
(
[id] => 1
[nick] => muskalek
[name] => bugabuga
[date] => 2010-01-15
[setby] => muskalek
[link] => aaa
)


Jak juz pisałem, mimo długich poszukiwań problem pozostaje nierozwiązany...
kefirek
  1. $today = date("Y-m-d");
  2. $ind = mysql_query("SELECT * FROM tasks WHERE date = '$today' AND nick = '$nick' ORDER BY id ASC");
  3.  
  4. if (mysql_num_rows($ind) > 0)
  5. {
  6. $text = "<dl id='tasks'>\n<dt>Witaj $nick.</dt>\n<dt>Twoje zadania na dzi&para; to:</dt>\n";
  7. while ($row = mysql_fetch_assoc($ind))
  8. {
  9. $text .= "<dd><a href='" . $row['link'] . "'>". $row['name'] . " ustawione przez " . $row['setby'] . "</dd></a>\n";
  10. }
  11. $text .= "</dl>\n";
  12. }
  13. else
  14. $text = "Nie masz zadań na dzi&para;";
Muskalek
Teraz niby ładnie działa ale nie pokazuje rekordu który zapytanie zwraca jako pierwszy.
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.