Requete mysql (soustraction)

raff-ael Messages postés 8 Statut Membre -  
raff-ael Messages postés 8 Statut Membre -
Bonsoir,
Je débute en mysql et je voudrais réaliser une requête de soustraction via un boutton, mais impossible, ai'je oublié quelque chose ?

Voici le code:

payer 5 000 euros.
<form><input type="submit" name="Envoyer" value="Envoyer" /></form>
<?
if(isset($_POST['Envoyer'])){
$sql='UPDATE login SET euros=euros-5000 WHERE pseudo="'.$_SESSION['pseudo'].'"';
if ($sql) {
die('Requête invalide : ' . mysql_error());
}
else{

echo 'Vous avez payé';
}
}
?>

Merci :)

2 réponses

ElementW Messages postés 5690 Statut Contributeur 1 224
 
'lut, ta requête SQL est bonne, mais encore faudrait-il la lançer ;)
$sql='UPDATE login SET euros=euros-5000 WHERE pseudo="'.$_SESSION['pseudo'].'"';
$req = mysql_query(); // <--- ceci
if ($req) {
	die('Requête invalide : ' . mysql_error());
} else {
	echo 'Vous avez payé';
}

Autrement, sache que l'extension PHP mysql et ses fonctions
mysql_*
sont obsolètes depuis PHP 5.5 et sont vouées a disparaitre dans les versions futures. Arrête d'apprendre avec
mysql_*
et passe à PDO.
De plus ton code a un potentiel risque d'injection SQL (pouvant modifier ou détruire ta base):
$_SESSION['pseudo']
peut contenir
"; UPDATE login SET euros=99999999; "
, qui effectivement se lancera en tant que commande et mettra tous les compteur d'argent a 99999999.
PDO possède des requêtes préparées, qui empêchent ça.
0
raff-ael Messages postés 8 Statut Membre
 
ah mince, l'erreur bête ... ^^''

merci :)

Merci du conseil je vais m'y mettre de-suite alors x)
0