![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 40 Pomógł: 5 Dołączył: 24.08.2007 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Kupiłem sobie książkę: "PHP Zaawansowane Programowanie" (autor: George Schlossnagle). Ksiązke przeczytałem więc postanowiłem sie pobawić z kodem. Sciągnąłem przykłady z książki ze strony: ftp://ftp.helion.pl/przyklady/phpzpv.zip (rozdzial03/3-04 << o ten przyklad mi chodzi) Tutaj plik do pobrania troszeczkę zmieniony przeze mnie (pododawałem trochę spacji, żeby go zrobić bardziej czytalniejszym kodem i tu jest też jak uruchamiam ten kod): http://www.speedyshare.com/578757574.html I jak proóbuje je uruchomić. Jednak pojawia mi się błąd: Kod [b]Warning[/b]: Invalid argument supplied for foreach() in [b]D:\MICHAL\programy\WebServ\httpd\inc\classes\mysql.class.php[/b] on line [b]130[/b] [b]Fatal error[/b]: Call to a member function next() on a non-object in [b]D:\MICHAL\programy\WebServ\httpd\inc\classes\mysql.class.php[/b] on line [b]262[/b] Próbowałem go sam naprawić, ale mi nie idzie. Czy ktoś mógłby spróbować to zrobić ? |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 999 Pomógł: 30 Dołączył: 14.01.2007 Skąd: wiesz ? Ostrzeżenie: (0%) ![]() ![]() |
1) Dopisz na początku skryptu error_trigger(E_ALL);
2) Wywal tą książkę do śmieci razem z jej wspaniałymi przykładami i zacznij czytać manual'a na php.net Cytat Warning: Invalid argument supplied for foreach() in D:\MICHAL\programy\WebServ\httpd\inc\classes\mysql.class.php on line 130 Jak zapewne wiesz konstrukcja foreach() przyjmuje jako pierwszy parametr tablicę. No cóż więc właśnie taki komunikat zobaczysz jeśli będzie otrzymywała coś innego. Wniosek ? Metoda DB_Result::next() zwraca coś co nie jest tablicą.Cytat Fatal error: Call to a member function next() on a non-object in D:\MICHAL\programy\WebServ\httpd\inc\classes\mysql.class.php on line 262 A tutaj mamy informację że metoda next() nie może zwracać false lub czegokolwiek innego bo zmienna na której chcesz wywołać metodę "$result" nie jest obiektem. Dlaczego ? Nie mam pojęcia (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Któraś z funkcji wywoływanych powyżej po wykonaniu zapytania do bazy powinna zwracać obiekt manipulacji danymi, ale tego nie robi. Bardzo ale to bardzo możliwe jest że zwyczajnie nie masz połączenia z bazą danych.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 24.08.2025 - 16:00 |