Verification si le pseudo existe
- Accueil
- Forum
- Programmation
- PHP
- Verification si le pseudo existe
Chooper01 Le 20 août 2016 à 22:40 (Édité le 25 janvier 2019 à 17:52)
Voila je suis bloquer dans mon code php et j'ai besoin de vous ! 😭
Donc voila comme le titre l'indique je cherche à savoir si le pseudo est déja pris lorsque un utilisateur veux s'inscrire .. Mais sa m'affiche une erreur je vous mets mon code en dessous :
Requete pour verification du pseudo :
$reqpseudo = $bdd->prepare("SELECT * FROM membres WHERE pseudo = ?");
$reqpseudo->execute(array($pseudo));
$pseudoexist = $reqpseudo->rowcount();
Mon Code au complet :
<?php
try {
$bdd = new PDO("mysql:host=localhost;dbname=cuisine;charset=utf8", "***", "***", array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
} catch (PDOException $e)
{
echo 'Echec de la connexion : ' . $e->getMessage();
exit;
}
if (isset($_POST['valider']))
{
$pseudo = htmlspecialchars($_POST['pseudo']) ;
$mdp = sha1($_POST['mdp']) ;
$mdp2 = sha1($_POST['mdp2']) ;
$email = htmlspecialchars($_POST['email']) ;
$email2 = htmlspecialchars($_POST['email2']) ;
if (!empty($_POST['pseudo']) AND !empty($_POST['mdp']) AND !empty($_POST['mdp2']) AND !empty($_POST['email']) AND !empty($_POST['email2']))
{
$pseudolength = strlen($pseudo);
if ($pseudolength <= 20)
{
$reqpseudo = $bdd->prepare("SELECT * FROM membres WHERE pseudo = ?");
$reqpseudo->execute(array($pseudo));
$pseudoexist = $reqpseudo->rowcount();
if ($pseudoexist == 0)
{
if ($email == $email2)
{
if (filter_var($email, FILTER_VALIDATE_EMAIL))
{
$reqmail = $bdd->prepare("SELECT * FROM membres WHERE email = ?");
$reqmail->execute(array($email));
$mailexist = $reqmail->rowcount();
if ($mailexist == 0)
{
if ($mdp == $mdp2)
{
$crea = $bdd->prepare("INSERT INTO membres(pseudo, email, mdp) VALUES(?, ?, ?)");
$crea -> execute(array($pseudo, $email, $mdp));
$erreur = "Votre compte a été créé avec succés ! " ;
}
else {
$erreur = "Les 2 mots de passe doivent être identiques !";
}
}
else {
$erreur = "Le email que vous avez introduit est déja utilisé !" ;
}
}
else {
$erreur = " Votre email est incorrect ! " ;
}
}
else {
$erreur = "Les 2 email doivent être identiques !";
}
}
else {
$erreur ="Pseudo déja utilisé" ;
}
else {
$erreur = "Votre mot de passe ne doit pas dépasser 20 caractères" ;
}
}
else
{
$erreur = 'Tous les champs doivent être complétés !' ;
}
}
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Coco-Minute</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="stylesheet" type="text/css" href ="style/inscription.css" / >
<link rel="icon" type="image/png" href="images/favicon.png" />
</head>
<body>
<div id="banner1">
<div id="logo"><a href="index.html"> <img src="images/cocominute.gif"></a> </div>
<h1><a href="index.html">Coco-Minute</a></h1>
</div>
<div id="menu">
<ul>
<li><a href="index.html">Accueil</a></li>
<li><a href="ajouter.html">Ajouter une recette</a></li>
<li><a href="recettes.html">Recettes</a></li>
<li><a href="contact.html">Nous contacter</a></li>
<li> <a href="inscription.html">S'inscrire</a></li>
</ul>
</div>
<div id="formu">
<fieldset>
<legend> Formulaire d'inscription</legend>
<form id="bouton" method="POST" action="">
<input type="text" name="pseudo" placeholder="Pseudo" size="25" value="<?php if (isset($pseudo)) {echo $pseudo;} ?>" /> <br>
<input type="password" name="mdp" placeholder="Mots de Passe" size="25"/> <br>
<input type="password" name='mdp2' placeholder="Confirmer Mots de Passe" size="25"/> <br>
<input type="email" name="email" placeholder="E-mail" size="25" value="<?php if (isset($email)) {echo $email;} ?>"/> <br />
<input type="email" name="email2" placeholder="Confirmer E-mail" size="25" value="<?php if (isset($email2)) {echo $email2;} ?>"/> <br />
<input type="submit" name="valider" placeholder="Envoyer" value="Je m'inscris !" /> <br />
</form>
<?php if (isset($erreur))
{
echo $erreur ;
}
?>
</fieldset>
</div>
<div id="Footer">
<p>Tous droits réservé à Coco-Minute !</p>
</div>
</body>
</html>
Pour moi c'est que j'ai mal placé la requete et le if ..
L'erreur dis "( ! ) Parse error: syntax error, unexpected 'else' (T_ELSE) in C:\wamp64\www\Cuisine\inscription.php on line 74"
Voila merci d'avance 😀
Balatharas Le 20 août 2016 à 22:56 (Édité le 1 janvier 1970 à 01:00)
Essaie d'organiser parfaitement tes if avec les alinéas et tout. Je ne peux malheureusement pas tester ton code pour l'instant donc c'est tout ce que je peux proposer pour l'instant.
Voilà, et si vraiment tu ne trouves pas et que personne ne te réponds, je serai dispo soit demain (pas sur) soit Lundi.
Beignet
Jerome13 Le 20 août 2016 à 22:58 (Édité le 20 août 2016 à 22:59)
}
else
{
$erreur = 'Tous les champs doivent être complétés !';
}
}
?>
Chooper01 Le 20 août 2016 à 23:00 (Édité le 1 janvier 1970 à 01:00)
Merci a vous 2 😀
Jerome13 Le 20 août 2016 à 23:02 (Édité le 1 janvier 1970 à 01:00)
Chooper01 Le 20 août 2016 à 23:17 (Édité le 1 janvier 1970 à 01:00)
Jerome13 Le 20 août 2016 à 23:23 (Édité le 1 janvier 1970 à 01:00)
Chooper01 Le 20 août 2016 à 23:27 (Édité le 1 janvier 1970 à 01:00)
Chooper01 Le 20 août 2016 à 23:28 (Édité le 1 janvier 1970 à 01:00)
Jerome13 Le 21 août 2016 à 21:17 (Édité le 1 janvier 1970 à 01:00)