Autor Zpráva
pitos
Profil *
Zdravím,

Nevíte někdo co znamená ta chyba?

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/www/vyskoveprace-hunka.cz/www/ukazka-praci.php on line 99
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 LIMIT 0, 9' at line 1



Nevím kde by mohla být chyba kontroloval jsem to,ale na nic jsem nepřišel.

Předem všem dík
Beavis
Profil
pitos:
Syntaxe :-).
Když sem dáte kód, lépe se nám povede :-)..
pitos
Profil *
jistě

require "config.php";
$max = "9"; // prispevku na stranku							
$pocet=MySQL_Query("SELECT count(id) FROM ".$kat." ORDER BY id DESC"); // spocitam ID
$ukaz_pocet=mysql_fetch_array($pocet); 
$str=Ceil($ukaz_pocet[0]/$max); //ziskam pocet stranek
$strana2 = $_GET['strana'];
$strana = $strana2*$max;


ten řádek 99 je tenhle
$ukaz_pocet=mysql_fetch_array($pocet); 
Nox
Profil
mysql fetch array má jako argument "result", což je kolekce záznamů kterou (většinou) vrací funkce mysql_query, ale když neuspěje, vrátí místo result false...a tudíž se do fetch dostane false což není result

což bys měl v programu kontrolovat (is_result())

query vypadá syntakticky správně - když odhlédnu od toho že order by při samotném count(id) nemá smysl - teď jde o to, jestli má $kat správný obsah a jestli obsahuje sloupec id...

šlo by i dát count(*) protože jde předpokládát, že id nebude nikdy NULL a možná by to mohlo být rychlejší
(MyISAM sahá při count(*) rovnou do metadat pro hodnotu, nevím jestli to udělá i při ID a nebude je počítat)

pokud chceš získat jen jednu buňku jako v této query, jde použít i mysql_result(..., 0); místo fetch array, pak bude proměnná přímo ta buňka a ne array

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0