Autor | Zpráva | ||
---|---|---|---|
janbarasek Profil |
#1 · Zasláno: 15. 4. 2014, 17:55:51
Ahoj, mám asi hloupý dotaz, ale zajímalo by mě, proč mi nefunguje tento zápis:
mysql_query("UPDATE users SET autorizace = '1' WHERE key = '$key'") or die(mysql_error()); Pokud script spustím, tak to vrací tuto chybu a já nechápu proč: 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 'key = '3d284a44350c112a8c6ad433f3cf5c30'' at line 1 Připojení do databáze je funkční, jelikož ostatní scripty (ukládací a čtecí) fungují, jediný problém je s Updatem. Tento zápis používám vždy a až nyní po dlouhé době nějak z ničeho nic přestal fungovat. Btw: Nevyšla náhodou nějaká nová verze a je nyní jiný formát zápisu - tomu ale sám nevěřím. Předem děkuji za jakoukoli radu. |
||
Tori Profil |
#2 · Zasláno: 15. 4. 2014, 18:01:45
Tipuju, že chybí zpětné apostrofy okolo "key" - přeci jen je to rezervované slovo MySQL, mělo by se do nich dávat vždy.
|
||
janbarasek Profil |
#3 · Zasláno: 15. 4. 2014, 18:06:59
Tori:
„přeci jen je to rezervované slovo MySQL, mělo by se do nich dávat vždy.“ To je ono! Děkuji. Upřímně jsem vůbec netušil, že se musejí specifické slova nesoucí význam nějak oddělovat od běžného příkazu. Do teď mi vše fungovalo asi z toho důvodu, že jsem používal vždy klíč, co nebyl příkazem. Toto funguje: mysql_query("UPDATE users SET autorizace = '1' WHERE 'key' = '$key'"); |
||
pcmanik Profil |
#4 · Zasláno: 15. 4. 2014, 18:16:12
janbarasek:
Autorizace je zrejme stĺpec typu int a nie string, takže tie apostrofy sú okolo tej jednotky zbytočné. |
||
Tori Profil |
#5 · Zasláno: 15. 4. 2014, 18:25:13
|
||
Časová prodleva: 10 let
|
0