Jump to content
php.lv forumi

Warning: mysql_result(): supplied argument is not a valid MySQL result


Recommended Posts

http://paste.php.lv/f25a9f38aabebe73232c64503a806977?lang=php

 

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\AppServ\www\video\videolist.php on line 17

 

Warning: mysql_result(): supplied argument is not a valid MySQL result resource in C:\AppServ\www\video\videolist.php on line 36

 

kas tur pa vainu ? vis parejais iet var pieveinot utt .. bet tieshi skatiities visus video .. pff ! uzreiz sitas

Link to post
Share on other sites

http://paste.php.lv/f25a9f38aabebe73232c64503a806977?lang=php

 

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\AppServ\www\video\videolist.php on line 17

 

Warning: mysql_result(): supplied argument is not a valid MySQL result resource in C:\AppServ\www\video\videolist.php on line 36

 

kas tur pa vainu ? vis parejais iet var pieveinot utt .. bet tieshi skatiities visus video .. pff ! uzreiz sitas

Atkal un atkal šitā pati kļūda. vajadzētu tādu pašu sticky topicu kā par headers already sent :)

 

noteikti kļūda kvērija sintaksē.

echo mysql_error();

Link to post
Share on other sites

ņemot vērā, ka šī kļūda parādās ar apbrīnojamu regularitāti un stabilitāti (katru nedēļu), man lūgums adminiem/moderatoriem nopinot šo topiku, nomainot nosaukumu uz "Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource". pēc "Headers already sent" šis ir nākamais, uz kā visi (kas nelasa manuāli) krīt iekšā. pats jau kādas reizes 5x esmu atbildējis uz šo :D

 

ok, tgd skaidrojums skaidrā latviešu valodā:

izpildot kļūdainu sql

$result = mysql_query('SELECT * FROM TabulaKurasNav');

nekādi php warningi/errori uzreiz neparādās. vienīgi $result ir false, nevis resurss ar mysql datiem. tālāk šo false padodot iekš

while ($row = mysql_fetch_array($result)) {...}

arī rodas slavenais errors, par ko tgd ir runa

 

lai to laicīgi pamanītu un novērstu, dara tā:

$result = mysql_query('SELECT * FROM TabulaKurasNav') or die(mysql_error());

ja rezultāts "or" kreisajā pusē ir pozitīvs (sql izpildījās veiksmīgi), tad viss ir kārtībā un php turpina izpildīt nākamo rindiņu. bet ja rezultāts ir false, tad tiek izpildīta "or" labā puse, kas vnk izdrukā error un pārtrauc tālāku skripta darbību

 

tas arī viss. vēl tikai maza piebilde priekš tiem, kam patīk rakstīt mazāk un izdarīt vairāk. lai katram mysql_query() nevajadzētu galā kabināt or die(mysql_error());, sql var izpildīt ar funkciju, kas to izdara automātiski

function go($sSql) {  // izpilda mysql query
$h = mysql_query($sSql) or exit('<b>mysql_query() error ' . mysql_errno() . ':</b> ' . mysql_error() . '<br /><b>query:</b> ' . substr($sSql, 0, 1000));
return $h;
}
$result = go('SELECT * FROM TabulaKurasNav');

Edited by 2easy
Link to post
Share on other sites

Neliela piebilde. Es gan neieteiktu kabināt die() vai exit() neveiksmīga kvērija gadījumā, jo ja lapa būs publiskota, tad skatīties uz tādām kļūdām būtu nepieklājīgi. :) Tā vietā labāk būtu izveidot kādu logošanu :) Kļūdām pie fetch'a nevajadzētu rasties, jo normālos gadījumos, produkcijas vidē, error report'ings būs atslēgts :)

Link to post
Share on other sites

Lai pusceļā die() nesabojā outputu,diezgan optimāls variants,kas nekad nav pievīlis:

if(!$sql = mysql_query(" SELECT * FROM tabula_kuras_nav ")) 
 echo  mysql_error();             // vai arī $errors[] = mysql_error();
else if(mysql_num_rows($sql) > 0)
{
while($array = mysql_fetch_assoc($sql))
{ 
 // viss notiek
}
}

Edited by 404
Link to post
Share on other sites
  • 7 months later...
  • 8 months later...
  • 1 year later...

sveiki visiem !! man ir problema ari tada pasa !! "Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in/home/mtdlv/domains/mtd.lv/public_html/news.php on line 127" nu ko vajag nomajnit ??? a uz 127 rindas re kas rakstits ! while($row = mysql_fetch_array($result)) ko man tiessi ir janomajnaun uz ko ???? laj man butu janumi !! delj majaslapaj ! 

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...