Jump to content

Recommended Posts

Posted (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
<?php

if(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 :hypocrite:

Edited by Portekoi
Modo : Merci d'utiliser la balise "codebox" pour les codes longs
Posted

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 :)

Posted (edited)

$requete = mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());

tu as fait une legere erreur :smartass:

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

:shutup:

Edited by Humanbomb
Posted

$requete = mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());

tu as fait une legere erreur :smartass:

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

<?php
if(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();
}
?>

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...