Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [mysql] error
3miel
post 10.09.2004, 19:34:41
Post #1





Grupa: Zarejestrowani
Postów: 203
Pomógł: 0
Dołączył: 10.06.2004
Skąd: Gliwice

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


co oznacza taki bład:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/gsm/public_html/admin/viewa.php on line 22


--------------------
Go to the top of the page
+Quote Post
czachor
post 10.09.2004, 20:56:14
Post #2





Grupa: Zarejestrowani
Postów: 897
Pomógł: 40
Dołączył: 16.12.2003
Skąd: Warszawa

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


tiredsmiley.gif Podany argument nie jest poprawnym zasobem MySQL w pliku ..... linii... -> to tak mniej więcej...
Punkt 2d regulaminu ->
Cytat
Zadając pytanie, postarajmy się dostarczyć naszym rozmówcom maksimum informacji. Jeśli piszemy o komunikatach błędów, zacytujmy je w całości. Jeśli mamy błąd w kodzie, cytujemy odpowiedni jego fragment, plus kilka linii przed i po linii powodującej błąd.


--------------------
how many SEO experts does it take to change a light bulb,lightbulb,light,bulb,lamp,lighting,switch,sex,xxx
5-Reasons-why-you-should-NEVER-fix-a-computer-for-free
Go to the top of the page
+Quote Post
q
post 10.09.2004, 22:57:23
Post #3





Grupa: Zarejestrowani
Postów: 62
Pomógł: 0
Dołączył: 4.04.2003
Skąd: Częstochowa/Wrocław

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


fakt, informacji jak na lekarstwo :|

jednakze najczestrzym powodem takiego komunikatu, jezeli oczywiscie zaden inny nie pojawil sie wczesniej, jest zero rekordow pobranych przez polecenie "SELECT ... " , do ktorego odnosi sie mysql_fetch_array, proponyuje najpierw sprawdzic czy jakikolwiek rekord odowiadal zapytaniu


--------------------
www.iNdS.pl - Najwieksza Amatorska Sieć Komputerowa w Polsce
www.marcinpeciak.eu - under construction
Go to the top of the page
+Quote Post
anas
post 11.09.2004, 18:05:02
Post #4





Grupa: Zarejestrowani
Postów: 172
Pomógł: 0
Dołączył: 22.09.2002
Skąd: Gorzów Wlkp

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


Hej.

Sprawdz tez czy Twoje zapytanie jest poprawnie zapisane: jesli nie jestes pewien to wklej je tutaj to zweryfikujemy je wspolnie. Czesto blad w skladni powoduje takie bledy, chyba ze tak jak wspomnial przedmowca, mysql nie zwrocil innych komunikatow o bledach.

pozdrawiam

anas
Go to the top of the page
+Quote Post
Parti
post 12.09.2004, 12:12:37
Post #5





Grupa: Zarejestrowani
Postów: 116
Pomógł: 0
Dołączył: 22.07.2004

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


Cytat(q @ 2004-09-10 23:57:23)
jednakze najczestrzym powodem takiego komunikatu [...] jest zero rekordow pobranych przez polecenie "SELECT ... "

Z tym się zgodzić nie mogę. Jeśli zapytanie jest poprawne i zwróci zero rekordów, to nie ma żadnego błędu. Znaczy to tyle, że żaden rekord nie spełnia warunków zapytania, albo np. tabela jest pusta.

Ten błąd pojawia się wtedy, jeśli zapytanie jest błędne. Aby tego uniknąć najlepiej pisać:
  1. <?php
  2. $result = mysql_query($sql) or die(mysql_error());
  3. ?>

Albo jeszcze lepiej napisać sobie taką funkcje:
  1. <?php
  2. function my_query($sql)
  3. {
  4.  $result = mysql_query($sql);
  5.  
  6.  if (mysql_errno())
  7.  {
  8. echo mysql_errno() . &#092;": \" . mysql_error() . \"<br>SQL: \" . $sql;
  9. exit();
  10.  }
  11.  
  12.  return $result;
  13. }
  14.  
  15. ?>
Go to the top of the page
+Quote Post
q
post 12.09.2004, 15:30:06
Post #6





Grupa: Zarejestrowani
Postów: 62
Pomógł: 0
Dołączył: 4.04.2003
Skąd: Częstochowa/Wrocław

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


Parti masz racje, przed chwila to sprawdzilem, faktycznie, mysql_fetch_array przy poprawnym zapytaniu, jezeli wybrane zostalo zero rekordow, nie wywali bledow

w takim przypadku inna mozliwosc takiego komunikatu to bledne zapytanie. pisalem o tym wczesniej:

Cytat
jezeli oczywiscie zaden inny (komunikat) nie pojawil sie wczesniej


a tak wogole to mozemy sobie pisac, dyskutowac, a nawet nie ma o czym, bo autor postu przecenil troche forum i pomysal, ze kod jest zbedny winksmiley.jpg


--------------------
www.iNdS.pl - Najwieksza Amatorska Sieć Komputerowa w Polsce
www.marcinpeciak.eu - under construction
Go to the top of the page
+Quote Post
Vertical
post 21.09.2004, 20:04:26
Post #7





Grupa: Zarejestrowani
Postów: 848
Pomógł: 0
Dołączył: 7.07.2004
Skąd: Wrocław

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


Krótko, zwięźle i na temat: ten error wyskakuje wtedy, kiedy jest niepoprawne zapytanie.
Go to the top of the page
+Quote Post
BartekR
post 22.09.2004, 05:10:47
Post #8





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 20.09.2004
Skąd: Wrocław

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


Uściślając, taki błąd występuje wówczas, gdy argumentem funkcji mysql_fetch_array() nie jest mysql result resource. Jedną z przyczyn może być niepoprawne zapytanie, inną np. literówka w nazwie zmiennej. ;)

Zapytanie może być semantycznie poprawne, ale odwoływać się do nie istniejących pól lub tabel - wówczas również otrzymamy taki błąd.

Żeby ktokolwiek mógł wskazać Ci dokładnie błąd, musisz wkleić wszystkie linijki od wywołania mysql_query() do mysql_fetch_array() oraz strukturę wszystkich tabel, które wykorzystywane są w zapytaniu (najlepiej wklepując w kliencie mysql: SHOW CREATE TABLE nazwa_tabeli).
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: 12.06.2025 - 21:19