Autor Zpráva
Lenoknin
Profil *
Ahoj,
potřeboval bych od vás malou pomoc s php scriptem... pro vás to asi nebude žádný problém :-) nechci nic složitého :D

mám tento form:

<form action="insert.php" method="post"><br>
<center>
<b>Nick:</b> <input type="text" name="nick" /><br>
<b>počet:</b> <input type="text" name="pocet" /><br>
<input type="submit" value="ZAPSAT" />


a potřebuji udělat php script ,který by do mysql uložil pod nick daný počet (tedy číslo), ale aby ho zaroveň sečetl s číslem, které tam již je...
Předem moc děkuji za pomoc :-)
Tori
Profil
Dotaz do databáze bude vypadat asi takhle:
UPDATE tabulka SET pocet = pocet + 1 WHERE nick = 'ferda'
Kolik z toho skriptu máte, co vám nejvíc dělá problém?
Lenoknin
Profil *
tento radek mi uplne staci, jenze potrebuji aby neudelal prikaz +1, ale + a ten pocet z formu...
v tom je jediny problem ,ktery resim :D
hary28
Profil
UPDATE tabulka SET pocet = pocet + '".$_POST["pocet"]."' WHERE nick = 'ferda'
Majkl578
Profil
hary28:
Jen to ne! SQL injection ti nic neříká?

Vstupy od uživatele před vložením do SQL dotazu vždy ošetřovat (mysql_real_escape_string, ...):
mysql_real_escape_string($_POST['foo'])

Když jde o číslo, asi by bylo vhodné to jako číslo i přičítat:
mysql_query('UPDATE tabulka SET pocet = pocet + ' . (int) $_POST['foo'] . " WHERE nick = 'ferda'");
Lenoknin
Profil *
Chápu tedy správně, že pokud použiji předchozí form bude řádka vypadat takto?

mysql_query('UPDATE tabulka SET pocet = pocet + ' . (int) $_POST['pocet'] . " WHERE nick = '$nick'");

?
Tori
Profil
Lenoknin:
mysql_query('UPDATE tabulka SET pocet = pocet + ' . (int) $_POST['pocet'] . " WHERE nick = '" . mysql_real_escape_string($_POST['nick']) . "'"); 
Lenoknin
Profil *
funguje :-) děkuju moc za pomoc :-)

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