Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result reso
13 příspěvků
Archiv diskusního fóra
Fórum je uzavřené a slouží pouze ke čtení. Některé informace mohou být zastaralé.
-
Ahoj, může mi někdo poradit? Už 2 dny si lámu hlavu s tímhle problémem... Nedaří se mi zakomponovat do kodu to ORDER BY... Pokud ho vyndam ven, tak je vše v pohodě, ale když se tam objeví je to v pasti... Tady je kod... if (isset($sent)) { switch ($sent) { case "Zapsat": mysql_query($query); break; case "<novější<": $od-=$prispevku; break; case ">starší>": $od+=$prispevku; break; } } if(!isset($od)||$od<0) $od=0; $query = "SELECT * FROM Text"; $vysledek=mysql_query($query); $pocet=mysql_num_rows($vysledek); ?> <table width="50%" align="center"><tr> <td width="20%" align="right" valign="top" bgcolor="#000080"><br> <form action="<? echo $PHP_SELF; ?>" method="get" style="text-align: center"> <input type="hidden" name="od" value="<?= $od ?>"> <input type="submit" name="sent" <?= ($od==0) ? 'disabled' : '' ?> value="<novějąí<"> </form> </td> <td width="60%" align="center" bgcolor="#000080"><br> </td> <td width="20%" align="left" valign="top" bgcolor="#000080"><br> <form action="<? echo $PHP_SELF; ?>" method="get" style="text-align: right"> <input type="hidden" name="od" value="<?= $od ?>"> <p style="text-align: center"> <input type="submit" name="sent" <?= ($od >=($pocet-$prispevku)) ? 'disabled' : '' ?> value=">starąí>"></p> </form> </td> </tr></table> <? $query = "SELECT * FROM Text LIMIT $od , $prispevku ORDER BY Id DESC"; $vysledek = mysql_query($query); echo '<table width="80%" align="center"><tr><td>'; while ($data=mysql_fetch_array($vysledek)) { . . . . . . Díky moc za radu
-
1. Zkus prohodit LIMIT a ORDER 2. Neměl bys nechat dojít skript až na fetch_array, aniž víš, že query proběhlo dobře. Dobrým zvykem je odchytávání chyb už dříve: $vysledek = mysql_query($query) or die(mysql_error());
-
Dekuju moc, za radu! Ale udělal jsem vše co jsi radil a situace je stále tragická. V php dost plavu... Jinak teď mi to hází hlášku : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Resource id #4' at line 1 Tak teď už nevim jako vůbec :) Díky moc
-
Situace je jasná. SQL dotaz je špatně. Další krok je odladit SQL dotaz: $query = "SELECT * FROM Text LIMIT $od , $prispevku ORDER BY Id DESC"; echo $query; exit(); No a co ti to vypíše zkontroluješ (jestli máš vůbec naplněné proměnné). Pokud to vypadá dobře, tak to zkopíruješ do phpMyAdmina a musíš ladit.
-
Opět jsem udělal, co jsi doporučil a tohle mi to v phpmyadmin vyhodí... #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ORDER BY Id DESC' at line 1 Takže pokud by jsi mi ještěporadil s tím laděním :) Díky
-
parametr LIMIT patří na KONEC dotazu ...
-
Tak sem přepiš, co ti hodilo to echo. Máš vůbec tabulku Text a v ní alespon sloupec Id?
-
Nebyva LIMIT vzdy na konci dotazu? $query = "SELECT * FROM Text ORDER BY Id DESC LIMIT $od , $prispevku";
-
pozde ;)
-
Text i Id jsou - normalka když spustim kod bez toho ORDER BY, tak to funguje, ale prispevky se miradej blbe... takze to nedava smysl... jinak zde je to co mi vyhodilo SELECT * FROM Text LIMIT , 10 ORDER BY Id DESC
-
1. Vždyť jsem ti psal v 13:35, ať prohodíš LIMIT a ORDER BY. 2. Proměnná $od je prázdná - je jasné, že neúplný SQL dotaz nebude fungovat.
-
Za 1. se omlouvám 2. jdu to zmerčit Zatím díky moc za radu
-
SUPER! Našel jsem to! Ještě 1x ti díky