Potřeboval bych poradit, jsem nováček ohledně mysql a potřebuji v tabulce změnit hodnotu "utok" identifikovanou položkou "jmeno" v tabulce s nazvem "hraci" .uvádím skript, který mi sice vypíše,že změna proběhla, ale v tabulce ke změně nedojde.
$zmenautoku='30';
$prezdivka='red';
$spojeni= mysql_connect("mysql.webzdarma.cz","jmenodatabaze","heslo");
$result = mysql("jmenodatabaze","update hraci set utok='$zmenautoku' where jmeno=$prezdivka");
if ($result==0):
echo "Záznam se podařilo úspěšně aktualizovat.";
else:
echo "Záznam nelze aktualizovat, do povrchu pevného disku je vyryt.";
endif;
mysql_Close();
Děkuji za odpověď, pokud možno polopatistickou.
Red_dog
SQL dotazy se ladí tak, že si necháš zobrazit samotný dotaz, abys viděů, co ti tam dosadil z proměnných a ten proženeš přes phpMyAdmin. Pokud tam dostaneš výsledek, který očekáváš, pokračuješ dál odlaďováním skriptu.
Tedy, tvůj původní řádek:
$result = mysql("jmenodatabaze","update hraci set utok='$zmenautoku' where jmeno=$prezdivka");
Uprav na:
$query = "update hraci set utok='$zmenautoku' where jmeno=$prezdivka";
echo $query;
exit();
$result = mysql_query("jmenodatabaze",$query);
Až ti to pojede v PMA, odstraň ten exit.
Na první pohled se mi nelíbí:
- mysql NENÍ žádný příkaz, mělo by tam být mysql_query
Jo a ještě proměnná $prezdivka by take mela byt v apostrofech.
ahoj díky zkusím to, ty apostrofy, jsem takhle (ne)vycetl z nejakých skript , tedy že tam nemají být, a je fakt, že když jsem je tam dal, tak mi to házelo chybu, takhle mi to chybu sice nehází, ale taky to nezapisuje, i když jedno to zapsalo, a to mě dost mate.
aaaa už to fachá díky, měly tam být ty apostrofy, :-)