![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 132 Pomógł: 0 Dołączył: 14.12.2006 Skąd: Częstochowa Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 7 494 Pomógł: 302 Dołączył: 31.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
~Roguś problem nie leży w pętli. Kłopot zaczyna się zanim do niej wejdziesz i zaczniesz się w niej poruszać.Zwróć uwagę na błąd:
Cytat Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\usr\krasnal\konto\admin\admin.php on line 36 To oznacza że to co dostała funkcja mysql_fetch_array() było już błędne.Wniosek: to co zwróciła funkcja mysql_query() jest błędne bądź (to ważne!) zapytanie zwróciło 0 wyników.Żeby sprawdzić co się stało wyświetl to co zwraca mysql_error" title="Zobacz w manualu PHP" target="_manualoraz sprawdź ile wyników masz w rezultacie wykonania zapytania (mysql_ num_ rows" title="Zobacz w manualu PHP" target="_manual).Sprawdź to oczywiście zanim wejdziesz do pętli (zanim wykonasz mysql_ fetch_ array" title="Zobacz w manualu PHP" target="_manual).--update-- P.S. Pisanie $row[kategoria] to błąd. Zresztą zawsze używanie indeksów tekstowych w tablicach asocjacyjnych bez apostrofów bądź znaków cudzysłowu to błąd.Parser PHP działa tak: Natrafia na indeks kategoria, bierze go za stałą ponieważ nie jest zapisany jako string (nie ma " ani ') ale takiej stałej nie ma. Parser generuje Warning (albo Notice, nie pamiętam), ale ten błąd nie jest krytyczny więc skrypt jedzie dalej.Parser tworzy stałą której brakuje i nadaje jej wartość taką samą jak jej nazwa czyli mamy stałą kategoria o wartości kategoria. Teraz ma indeks i może znaleźć wartość w tablicy. Zwraca ją a, że wyświetlanie błędów masz wyłączone to wszystko gra. Otóż nie. Takie błędy mogą spowolnić działanie skryptu o prawie 30% |
|
|
![]() ![]() |
![]() |
Aktualny czas: 8.10.2025 - 13:32 |