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

Résolu
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. 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
    1. 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
      1. La virgule ne remplace pas AND
        0
        1. ok eh bien merci à toi, je continue mon apprentissage...
          0