Insérer une variable dans une requete sql

Résolu
fatatra Messages postés 50 Date d'inscription lundi 30 octobre 2006 Statut Membre Dernière intervention 3 décembre 2007 - 15 sept. 2007 à 11:33
cs_coq Messages postés 6351 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 - 15 sept. 2007 à 18:00
Bonjour a tous;
je cherche a integrer une variable php dans une requéte my sql.
exemple:

$id = $_POST['listeJoueurs'];  //je recupere l'id correspond a un joueur dans la table joueurs(sur la page php d'avant, ok!)

$query = mysql_fetch_array(mysql_query ("SELECT motDePasse FROM joueurs where id='$id'
"));//je recupere le mot correspondant a cette id (marche pas!!)

echo $query ['motDePasse'];// je l'affiche

Voila, je pense que c'est la partie en gras qui fonctionne pas.
D'autre part je pense pas que ce code soit tres optimisé, si quelqu'un sait comment le racourcir?

Merci d'avance.

6 réponses

nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Modérateur Dernière intervention 15 juillet 2011 37
15 sept. 2007 à 15:19
Salut,

Tu n'a surement pas chercher longtemps le nom de scripts qui fait ca est impressionnant, > >98% des prog PHP le font

"SELECT motDePasse FROM joueurs where id=
'" + $id + "'"

Il s'agit d'une simple concaténation de chaine.
apres il faut mettre une ' si ton id  est une chaine de caractère.
Attention si tu as une ' dans ta valeur de champs si faut les doublées.

Cherche un peu si tu as d'autres problemes

Bon courage.
3
fatatra Messages postés 50 Date d'inscription lundi 30 octobre 2006 Statut Membre Dernière intervention 3 décembre 2007
15 sept. 2007 à 15:26
merci,
tu sais quand on débute on galére un peu sur tout.
0
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Modérateur Dernière intervention 15 juillet 2011 37
15 sept. 2007 à 15:45
Je sais c'est pourquoi j'ai complete le message.
0
cs_coq Messages postés 6351 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 100
15 sept. 2007 à 17:37
Salut,

PHP ne supporte pas les requêtes paramétrées ou tout autre moyen permettant de limiter les risques d'injection SQL ?

/*
coq
MVP Visual C#
CoqBlog
*/
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Modérateur Dernière intervention 15 juillet 2011 37
15 sept. 2007 à 17:57
Salut coq,

PHP n'est pas mon langage de predilection, je plus orienté .NET comme toi, il me semble.

Donc pour info

MYSQL supporte les requetes parametrees depuis la version 4.2 apparament.

Une page de documentation
http://fr.php.net/mysql_real_escape_string

Pour info PHP5 semble introduire les requetes paramétrees.
http://maximilian.developpez.com/mysql/prepared-statements/

Et sinon il y a pear:DB
http://pear.php.net/manual/en/package.database.db.intro-query.php

A final je suis d'accord avec toi et j'utilise le plus possible les requetes paramétrées en dotnet et vb6, java.
Mais je me suis jamais poser la question en PHP, j'ai decouvert quelquechose ;-)

Bon coding
0
cs_coq Messages postés 6351 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 100
15 sept. 2007 à 18:00
Ca me rassure aussi ^^

/*
coq
MVP Visual C#
CoqBlog
*/
0
Rejoignez-nous