Php/mysql insertion de $_POST dans requete...

Résolu
steph6499 -  
 steph6499 -
Bonjour,

Je souhaite insérer la variable ci-dessus dans une requête mais malgré un grand nombre de tentative de position de guillemets, cela me renvoie l'erreur :

Erreur : SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' motdepasse ='dsvgsfbd'' at line 1

Ma requête :

$reponse = $bdd->query("SELECT * FROM identifiants WHERE identifiant ='".$_POST["nom"]."', motdepasse ='".$_POST["mdp"]."'");

Où est mon erreur?

Merci d'avance pour vos réponses.

Steph

4 réponses

  1. CrazyWorld Messages postés 326 Date d'inscription   Statut Membre Dernière intervention   41
     
    Protege tes variables contre des injections Sql
    $nom=mysql_real_escape_string($_POST["nom"]);
    $mdp=mysql_real_escape_string($_POST["mdp"]);

    //remplace la virgule par AND
    $reponse = $bdd->query("SELECT * FROM identifiants WHERE identifiant =\"$nom\" AND motdepasse =\"$mdp\"");
    1
  2. steph6499
     
    Merci beaucoup ! Rapide et efficace.
    Je voudrais quand meme bien comprendre mon erreur :
    - le fait de ne pas sécuriser mes données n'est pas une bonne idée, mais ce n'est pas çà qui génère mon erreur. Si?
    - ou ce sont mes guillemets qui posaient probleme?
    - enfin, le AND est-il nécessaire? La virgule ne suffisait pas?

    Merci de m'éclairer un peu plus
    1
  3. CrazyWorld Messages postés 326 Date d'inscription   Statut Membre Dernière intervention   41
     
    La virgule ne remplace pas AND
    0
  4. steph6499
     
    ok eh bien merci à toi, je continue mon apprentissage...
    0