[PHP] mysql_fetch_array error

Pagina: 1
Acties:
  • 50 views sinds 30-01-2008

  • KoBolD54
  • Registratie: Maart 2002
  • Laatst online: 15:23
Ik heb op me laptop een website gemaakt en daar werkt hij hemelaal goed op.
Nu zet ik hem naar mijn server en krijg de volgende foutmelding:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in \wwwroot\test\last_products.inc.php on line 20

het gaat om dit stukje en bij mysql_fetch_array is regel 20.
PHP:
1
2
3
4
// alle artiekelen selecteren en de eerste 4 weergeven
$artikelen_sql = "SELECT * FROM artikelen ORDER BY product_naa ASC" or die(mysql_error());
$artikelen_result = mysql_query($artikelen_sql);
while ($artikelen = mysql_fetch_array($artikelen_result)) {


heb heb al geprobeerd mysql_fetch_array te vervangen naar mysql_fetch_assoc maar dat werkt ook niet.
De database is zeker weten gevuld en de namen bestaan ook.
Hopelijk kunnen jullie mij helpen

  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

ehm, kijk eens goed naar je code :o
je query lukt niet (ik gok dat het product_naam moet zijn ipv product_naa)

die "die(mysql_error())" moet natuurlijk na die mysql_query, niet na een string toekenning.

  • Skaah
  • Registratie: Juni 2001
  • Niet online
Die query klopt waarschijnlijk toch niet. Controleer het nog eens. Je "or die()" staat namelijk op ed verkeerde regel (moet bij de volgende zijn).

  • ZroBioNe
  • Registratie: Augustus 2001
  • Niet online
Wat is de output van:
[php]
echo mysql_num_rows($artikelen_result);
[/]
Als dit 0 is, betekent het dat er dus geen results in je database staan..


Spuit 11 :)
Je code klopt idd niet..

[ Voor 15% gewijzigd door ZroBioNe op 27-04-2006 13:59 ]


  • Swaptor
  • Registratie: Mei 2003
  • Laatst online: 16-02 22:21

Swaptor

Java Apprentice

Roep aub even je gebruikte mysql versies, php-versies en meer info over de gebruikte webserver.

Ontdek mij!
Proud NGS member
Stats-mod & forum-dude


  • XWB
  • Registratie: Januari 2002
  • Niet online

XWB

Devver
PHP:
1
2
$artikelen_sql = "SELECT * FROM artikelen ORDER BY product_naa ASC";
$artikelen_result = mysql_query($artikelen_sql) or die(mysql_error());


/edit
spuit 11 :+

[ Voor 11% gewijzigd door XWB op 27-04-2006 13:59 ]

March of the Eagles


  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

ZroBioNe schreef op donderdag 27 april 2006 @ 13:58:
Wat is de output van:
[php]
echo mysql_num_rows($artikelen_result);
[/]
Als dit 0 is, betekent het dat er dus geen results in je database staan..


Spuit 11 :)
Je code klopt idd niet..
buiten het feit dat de code niet klopt, mysql_fetch_aray/assoc returnt false als er geen rows meer zijn, dus mysql_num_rows zou je in dit geval niet eens nodig hebben :)

  • Equator
  • Registratie: April 2001
  • Laatst online: 17:36

Equator

Crew Council

#whisky #barista

Het vervangen van mysql_fetch_array met mysql_fetch_assoc heeft ook totaal geen nut.
De laatste maakt enkelt een associatieve array. De werking is verder exact hetzelfde.

Controleer eens of je $artikelen_result uberhaubt wel een waarde bevat.
Laat maar, spuit 11, en beter antwoorden aanwezig :D

[ Voor 12% gewijzigd door Equator op 27-04-2006 14:03 ]


  • Brecht Laitem
  • Registratie: November 2005
  • Laatst online: 07-06-2024
ZroBioNe schreef op donderdag 27 april 2006 @ 13:58:
Wat is de output van:
[php]
echo mysql_num_rows($artikelen_result);
[/]
Als dit 0 is, betekent het dat er dus geen results in je database staan..


Spuit 11 :)
Je code klopt idd niet..
Onnodig. De foutmelding zegt dat de result die je meegeeft ongeldig is. En jij roept dan nog eens een functie aan die deze ongeldige resultset gaat gebruiken, wat als resultaat heeft dat je nogmaals die foutmelding zal krijgen. Trouwens, 0 rijen terugkrijgen is geen enkel probleem en zal geen error tonen. Er is dus iets fout met je query. Als ik zo'n fout krijg dan voer ik die query eens uit in phpmyadmin of iets dergelijks. Dan zie je direct waar de fout zit.

  • ZroBioNe
  • Registratie: Augustus 2001
  • Niet online
Erkens schreef op donderdag 27 april 2006 @ 14:01:
[...]

buiten het feit dat de code niet klopt, mysql_fetch_aray/assoc returnt false als er geen rows meer zijn, dus mysql_num_rows zou je in dit geval niet eens nodig hebben :)
Oké, ik dacht eigenlijk dat als er geen results waren er ook een fout was.
Maar nu je het zegt :/

-edit-
OK I get it people! ;)

[ Voor 5% gewijzigd door ZroBioNe op 27-04-2006 14:04 ]


  • NMe
  • Registratie: Februari 2004
  • Laatst online: 22-01 23:51

NMe

Quia Ego Sic Dico.

Als je terugkrijgt dat je geen geldige resource hebt, dan komt dat altijd door een fout in je query. In dit geval dus waarschijnlijk een simpel tikfoutje. Met een beetje debuggen moet je daar altijd wel zelf uit kunnen komen, daar heb je GoT niet bij nodig. ;)

Zie ook Programming FAQ - Debuggen: hoe doe ik dat?. :)

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.

Pagina: 1

Dit topic is gesloten.