Autor Zpráva
Tomkinss
Profil
Dobre ráno
Mám menší problém zo zápisom do databáze.
Ide o vytiahnutie čísla z DB a následne zvýšenie o hodnotu v premennej, ktorá je 0,001.

$vzz = 10;
$prip = mysql_query("SELECT * FROM users WHERE nick='$user'");
$prip_v = mysql_fetch_array($prip);
	$pripocitany = $prip_v["cash"] + ($vzz/10000);
$update_cash = mysql_query("UPDATE users SET cash = '$pripocitany' WHERE nick='$user'");


Typ pola v DB mám INT, skúšal som už aj REAL, no v žiadnom mi to nezapíše...
Ďakujem za radu.
Joker
Profil
Tomkinss:
Pro informaci, databáze taky umí počítat.
Takže vytáhnout z databáze všechny položky daného záznamu, z toho si vybrat jednu kterou skutečně potřebuji, udělat výpočet který dokáže i ta databáze a pak výsledek zase uložit do databáze není zrovna vrchol efektivity.
UPDATE `users` SET cash = cash + 0.001 WHERE nick = '$user'
by mělo udělat totéž.

Typ pola v DB mám INT
No za prvé INT je celé číslo a za druhé, proč se teda v update dotazu do toho cpe řetězec?
Typ REAL by měl být správně (i spíš se používá název DOUBLE).

no v žiadnom mi to nezapíše
Jak vypadá celý sestavený dotaz (s už doplněnými proměnnými)?
Taps
Profil
Tomkinss:
$update_cash = mysql_query("UPDATE users SET cash = cash+$pripocitany WHERE nick='$user'");
Stano
Profil *
http://kiwiki.fmtnuni.sk/mediawiki/index.php/SQL_-_d%C3%A1tov%C3%A9_typy#.C4.8C.C3.ADseln.C3.A9_typy
Tomkinss
Profil
Stano:
Ďakujem, to si uložím.

Joker:
Problém bol asi v tom, že som to tam skúšal vložiť ako reťazec. Teraz to už všetko funguje.

Ďakujem všetkým za pomoc.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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