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

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