Humanbomb Posted March 9, 2008 Posted March 9, 2008 (edited) Salut tous le monde, J'ai développé un script pour que les utilisateurs s'inscrivent sur le site qui envoie les données dans la bdd avec un id automatique, un pseudo, un mdp, et un email, mais je me suis aperçu que deux personnes peuvent avoir le même pseudo, il faut avouer que c'est un peu génant :!:. Je cherche la modification à apporter à mon script. Mon script (PHP) : CODE <?phpif(isset($_POST['pseudo'])) $pseudo=$_POST['pseudo']; else $pseudo=""; if(isset($_POST['mdp'])) $mdp=$_POST['mdp']; else $mdp=""; if(isset($_POST['email'])) $email=$_POST['email']; else $email=""; if(empty($pseudo) OR empty($mdp) OR empty($email)) { echo '<font color="red">Attention, aucun champs peut rester vide !</font>'; } else { include('connect.php'); $sql = "INSERT INTO tbl_user(id, login, mdp, email) VALUES('','$pseudo','$mdp','$email')"; mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); echo 'Votre inscription à été réalisé avec succée.'; include('connexion.php'); mysql_close(); } ?> Donc voila je fais appelle à vous Edited March 9, 2008 by Portekoi Modo : Merci d'utiliser la balise "codebox" pour les codes longs
Portekoi Posted March 9, 2008 Posted March 9, 2008 Bonsoir, Avant le Insert, fais : <?$sql = "select 1 from tbl_user where login = '".$login."'";$requete = mysq_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());//Si on ne trouve pas ce pseudo dans la base...if mysql_num_rows($requete) == 0{//Ton code de création}else{//Ton code en cas de doublon}?> Je suis un peu rouillé en PHP, doit peut être y avoir une erreur mais le principe y est
Humanbomb Posted March 9, 2008 Author Posted March 9, 2008 (edited) $requete = mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); tu as fait une legere erreur je test et je reposte la réponse ---------------------------------------------------------------------------------------------------- Pour éviter le double post J'ai une erreur : Parse error: syntax error, unexpected T_STRING, expecting '(' in H:\serveur\PortableZMWS-0.8.15-fr-r01\PortableZMWS\ZMWS\_web.zmwsc\site\add.php on line 26 Edited March 9, 2008 by Humanbomb
Humanbomb Posted March 9, 2008 Author Posted March 9, 2008 $requete = mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); tu as fait une legere erreur je test et je reposte la réponse ---------------------------------------------------------------------------------------------------- Pour éviter le double post J'ai une erreur : Parse error: syntax error, unexpected T_STRING, expecting '(' in H:\serveur\PortableZMWS-0.8.15-fr-r01\PortableZMWS\ZMWS\_web.zmwsc\site\add.php on line 23 <?phpif(isset($_POST['pseudo'])) $pseudo=$_POST['pseudo'];else $pseudo="";if(isset($_POST['mdp'])) $mdp=$_POST['mdp'];else $mdp="";if(isset($_POST['email'])) $email=$_POST['email'];else $email="";if(empty($pseudo) OR empty($mdp) OR empty($email)){echo '<font color="red">Attention, aucun champs peut rester vide !</font>';}else{include('connect.php');$sql = "select 1 from tbl_user where login = '".$login."'";$requete = mysq_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());//Si on ne trouve pas ce pseudo dans la base...if mysql_num_rows($requete) == 0{//Ton code de création}else{echo 'Pseudo déja utilisé'}$sql = "INSERT INTO tbl_user(id, login, mdp, email) VALUES('','$pseudo','$mdp','$email')";mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());echo 'Votre inscription à été réalisé avec succée.';include('connexion.php');mysql_close();}?>
Portekoi Posted March 9, 2008 Posted March 9, 2008 Remplace ca : if mysql_num_rows($requete) == 0 par ca : if (mysql_num_rows($requete) == 0)
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now