Verification si le pseudo existe

Ce topic a été résolu
Chooper01

Chooper01 Le 20 août 2016 à 22:40 (Édité le 25 janvier 2019 à 17:52)

Bonsoir, 
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

Balatharas Le 20 août 2016 à 22:56

Salut salut jeune Ananas du forum ! (C'est comme ça que j'appelle cette communauté maintenant 😋)
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

Jerome13 Le 20 août 2016 à 22:58 (Édité le 20 août 2016 à 22:59)

Ton dernier else est mal placé et ce n'est peut-être pas le seul... Il doit se trouver un crochet fermant en-dessous, regarde :

      }
      else
      {
         $erreur = 'Tous les champs doivent être complétés !';
      }
}
?>
Chooper01

Chooper01 Le 20 août 2016 à 23:00

Niquel sa fonctionne c'est bien mes else qui était mal placé j'ai encore du mal a bien organisé le code 
Merci a vous 2 😀
Jerome13

Jerome13 Le 20 août 2016 à 23:02

Quand j'ai vu ton code, je me suis tiens, ça ressemble sensiblement à la connerie que j'ai faite il y a deux heures ^^ 
Chooper01

Chooper01 Le 20 août 2016 à 23:17

Mdrr pourtant je l'avais lu ton post et je me suis dis " Bordel faut que j'arrange mon code .. Sa presse pas tranquille" et voila le résultat xD
Jerome13

Jerome13 Le 20 août 2016 à 23:23

En même temps quand je bloque ou quand j'ai un peu la flemme de réfléchir, je refais la mise en page, c'est mon petit passe-temps 😀
Chooper01

Chooper01 Le 20 août 2016 à 23:27

Je fais pareil mdr quand on on voit tous pleins de lignes de code de temps en temps  on déprime xd
Chooper01

Chooper01 Le 20 août 2016 à 23:28

Envoie mon ton skype qu'on reste en contact pour nos projets ect 😉
Jerome13

Jerome13 Le 21 août 2016 à 21:17

Si tu veux mais passe le tien, il n'y a pas de messagerie et poster mon pseudo Skype sur un forum, ça ne fait pas parti de mes passions ^^
Chooper01

Chooper01 Le 21 août 2016 à 23:31

ouki alors tiens : chooper011
Vous devez être connecté pour poster une réponse. Se connecter ou Créer un compte