|
|
|
|
Bonjour,
mon script plante il menvoie l'erreur suivante:'"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 '&& prenom =' at line 1"
et jarrive plus a detecter lerreur ni dou elle vient!
pouvez vous maider svp. voici un extrait de mon code::
<?php
if (isset($_POST['mot_de_passe']) && isset($_POST['nom']) && isset($_POST['prenom']))
{ mysql_connect("localhost", "root", "");
mysql_select_db("tests");
$nom = mysql_real_escape_string(htmlspecialchars($_POST['nom']));
$prenom = mysql_real_escape_string(htmlspecialchars($_POST['prenom']));
$mot_de_passe = mysql_real_escape_string(htmlspecialchars($_POST['mot_de_passe']));
$reponse = mysql_query('SELECT mot_de_passe FROM visiteurs WHERE nom ='. $nom .' && prenom ='. $prenom .'')or die(mysql_error());
$donnees = mysql_fetch_array($reponse);
}
else
{ mysql_connect("localhost", "root", "");
mysql_select_db("tests");
$mot_de_passe = "";
$nom = "";
$prenom = "";
$reponse = mysql_query('SELECT mot_de_passe FROM visiteurs WHERE nom ="" AND prenom =""')or die(mysql_error());
$donnees = mysql_fetch_array($reponse);
}
if ($donnees['mot_de_passe'] == $mot_de_passe)
{
Configuration: Windows XP Firefox 2.0.0.16
Bonjour,
|
Merci pr votre reponse!
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"> <head> <title></title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> </head> <body> <fieldset> <legend><strong>Vos coordonnées:</strong></legend> <form action="titre.php" method="post"> <p> <label for="prenom"><strong>votre prenom</strong></label> :<br /> <input type="text" name="prenom" id="prenom" /> </p> <p> <label for="nom"><strong>Votre nom</strong></label>:<br /> <input type="text" name="nom" id="nom" /> </p> <p> <label for="password"><strong>Votre mot de passe</strong></label> :<br /> <input type="password" name="mot_de_passe" id="pseudo" /> </p> </fieldset> <p> <input type="submit" value="Valider" /> <input type="reset" /> </p> </form> </body> </html> <?php if (isset($_POST['mot_de_passe']) && isset($_POST['nom']) && isset($_POST['prenom'])) { mysql_connect("localhost", "root", ""); mysql_select_db("tests"); $nom = mysql_real_escape_string(htmlspecialchars($_POST['nom'])); $prenom = mysql_real_escape_string(htmlspecialchars($_POST['prenom'])); $mot_de_passe = mysql_real_escape_string(htmlspecialchars($_POST['mot_de_passe'])); $reponse = mysql_query('SELECT mot_de_passe FROM visiteurs WHERE nom ='. addslashes($nom) .' && prenom ='. addslashes($prenom) .'')or die(mysql_error()); $donnees = mysql_fetch_array($reponse); //$reponse = mysql_query('SELECT mot_de_passe FROM visiteurs WHERE nom ='. $nom .' && prenom ='. $prenom .'')or die(mysql_error()); } else { mysql_connect("localhost", "root", ""); mysql_select_db("tests"); $mot_de_passe = ""; $nom = ""; $prenom = ""; $reponse = mysql_query('SELECT mot_de_passe FROM visiteurs WHERE nom ="" AND prenom =""')or die(mysql_error()); $donnees = mysql_fetch_array($reponse); } if ($donnees['mot_de_passe'] == $mot_de_passe) { ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"> <head> <title></title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> </head> <body> <form action="....php" method="post"> <p> <fieldset> <legend><strong>.......</strong> :</legend> ............... </fieldset> <input type="submit" value="Valider" /> <br /> </p> </form> </body> </html> <?php } ?> i |
Salut,
|
Salut,
|
Comment ca ts les infos!
|
Je vous ai juste expliqué l'objectif voulu du code! c'est qu'il doit afficher deux pages :la première pour l'authentification et le passage à la deuxième page se fait en vérifiant si ces coordonnées (postées par l'utilisateur) correspondent à celles déjà existées dans une table de la base de données 'tests'.
|
Salut,
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd";> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"> <head> <title></title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> </head> <body> <?php //init variables de travail $valid=false; $msg=""; //test si le formulaire d'identif a été posté if (isset($_POST['mot_de_passe']) && isset($_POST['nom']) && isset($_POST['prenom'])) { mysql_connect("localhost", "root", ""); mysql_select_db("tests"); $nom = mysql_real_escape_string(htmlspecialchars($_POST['nom'])); $prenom = mysql_real_escape_string(htmlspecialchars($_POST['prenom'])); $mot_de_passe = mysql_real_escape_string(htmlspecialchars($_POST['mot_de_passe'])); $reponse = mysql_query("SELECT mot_de_passe FROM visiteurs WHERE nom ='". addslashes($nom) ."' AND prenom ='". addslashes($prenom) ."'")or die(mysql_error()); mysql_close(); if(mysql_num_rows($reponse)==1){ $donnees = mysql_fetch_array($reponse); if ($donnees['mot_de_passe'] == $mot_de_passe) { $valid=true; //c'est ok on affiche la suite ?> <form action="....php" method="post"> <p> <fieldset> <legend><strong>.......</strong> :</legend> ............... </fieldset> <input type="submit" value="Valider" /> <br /> </p> </form> <?php }else{ $msg="mot de passe incorrect"; } }else{ $msg="Nom et/ou prenom non trouvé"; } } if ($valid==false){ ?> <fieldset> <legend><strong>Vos coordonnées:</strong></legend> <form action="titre.php" method="post"> <p> <label for="prenom"><strong>Votre prenom</strong></label> :<br /> <input type="text" name="prenom" id="prenom" /> </p> <p> <label for="nom"><strong>Votre nom</strong></label>:<br /> <input type="text" name="nom" id="nom" /> </p> <p> <label for="password"><strong>Votre mot de passe</strong></label> :<br /> <input type="password" name="mot_de_passe" id="pseudo" /> </p> <?php if($msg != ""){echo "<font color='red'>".$msg."</font>"; ?> </fieldset> <p> <input type="submit" value="Valider" /> <input type="reset" /> </p> <?php } ?> </body> </html> |