Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP] Problem z wyświetlaniem danych z foreach()
Muskalek
post 15.01.2010, 22:20:26
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 15.01.2010

Ostrzeżenie: (0%)
-----


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...
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
kefirek
post 16.01.2010, 17:05:22
Post #2





Grupa: Zarejestrowani
Postów: 781
Pomógł: 256
Dołączył: 29.06.2008

Ostrzeżenie: (0%)
-----


  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;";
Go to the top of the page
+Quote Post
Muskalek
post 17.01.2010, 10:31:55
Post #3





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 15.01.2010

Ostrzeżenie: (0%)
-----


Teraz niby ładnie działa ale nie pokazuje rekordu który zapytanie zwraca jako pierwszy.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 18:30