Erreur de syntax

salah2526 Messages postés 21 Statut Membre -  
jambondardennes Messages postés 492 Statut Membre -
Bonjour,
J'utilise php 5.3.0 mysql 5.1.36.
J'ai le message suivant lors de l'execution du code:

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 'AND MotDePass='salah'' at line 1

Voici ma requette, mais jusq'a maintenent je n'arrive pas à detecter l'erreur, je crois de c'est un probleme de concatenation.

$reqchaine="SELECT * FROM users WHERE Nom='".$nom."';AND MotDePass='".$motdepasse."';";
Configuration: Windows XP
Firefox 3.5.2

6 réponses

  1. M@dien Messages postés 439 Date d'inscription   Statut Membre Dernière intervention   74
     
    Bonjour,

    Ceci devrait fonctionner:
    $reqchaine="SELECT * FROM users WHERE Nom='".$nom."' AND MotDePass='".$motdepasse."' ";


    Le ";" c'est que pour les fins d'instructions SQL.
    0
  2. jambondardennes Messages postés 492 Statut Membre 39
     
    $reqchaine="SELECT * FROM users WHERE Nom='$nom' AND MotDePass='$motdepasse'";
    0
  3. salah2526 Messages postés 21 Statut Membre
     
    Merci les deux methodes marchent. C'est résoulu.
    0
  4. jambondardennes Messages postés 492 Statut Membre 39
     
    mais un truc que j'ai pas compris pourquoi faisais tu Nom='".$nom."' ?
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. M@dien Messages postés 439 Date d'inscription   Statut Membre Dernière intervention   74
     
    Tout simplement parce que c'est plus rapide.
    Plus long à écrire certes, mais en temps d'exécution, la variable intégrée est plus longue.

    Citation:
    Cette fois nous affectons, en plus de la chaine, la variable $i qui correspond au compteur des 3 millions d'itérations.
    //1° cas
    $chaine='Ceci est une variable : '.$i;

    //2° cas
    $chaine="Ceci est une variable : ".$i;

    //3° cas
    $chaine="Ceci est une variable : $i";

    Durée en s
    1° cas 3.96654582024
    2° cas 3.97251200676
    3° cas 4.95615792274

    Source: https://m-fernandez.developpez.com/articles/php/bench/
    _________________________

    Voilà pourquoi je mets toujours mes variables en concaténation de la chaine et non à l'intérieur de la chaine.
    0
  7. jambondardennes Messages postés 492 Statut Membre 39
     
    ok merci pour l'info ;)
    0