Formulaire inscription

Signaler
Messages postés
22
Date d'inscription
lundi 11 mai 2020
Statut
Membre
Dernière intervention
24 mai 2020
-
bonjour. j'ai un soucis avec mon form d'inscription qui lui est relié a mon form de connection. j'arrive a remplir tout les champs mais le soucis est que les donnés ne vont pas dans ma BDD. pour cela je vous envoie mon fichier connection a la BDD et mon fichier inscript. Pouvez vous m'aider svp?

 <?php
      //connexion a la bd

      function getPDO(){
          try{
              $connexion = new PDO('msql:dbname=mabase; host=127.0.0.1', 'root', '');
              $connexion->exec("SET CHARACTER SET UTF8");
              return $connexion;
               // Activation des erreurs PDO
            $connexion->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

            // mode de fetch par défaut : FETCH_ASSOC / FETCH_OBJ / FETCH_BOTH
             $connexion->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC);
             }

             catch(PDOException $e){
                 var_dump($e);
                 echo 'connection failed: ' or die('Erreur : ' . $e->getMessage());
             }
      }

      function countDatabaseValue($connexionBDD, $key, $value){
          $request = "SELECT * FROM clients WHERE $key = ?";
          $rowCount = $connexionBDD->prepare($request);
          $rowCount->execute(array($value));
          return $rowCount->rowCount();
      }


<?php
include'connection.php';

 if(isset($_POST['forminscription']))
{
    $pseudo = htmlspecialchars($_POST['pseudo']);
    $email= htmlspecialchars($_POST['email']);
    $mdp = password_hach($_POST['password']);
    $mdp2 = password_hach($_POST['password']);

    if((!empty($pseudo))  && (!empty($email)) && (!empty($mdp)) && (!empty($mdp2)))
    {
        if(strlen($pseudo)<=20)
        {
            if(filter_var($email, FILTER_VALIDATE_EMAIL))
            {
                if($mdp == $mdp2)
                {
                    $connexion = getPDO();
                    $rowEmail = countDatabaseValue($connexion, 'email', $email);
                    if($rowEmail == 0)
                    {
                      $rowpseudo = countDatabaseValue($connexion, 'pseudo', $pseudo);
                      if($rowpseudo == 0)
                      {
                     $insertmbr = $connexionbdd->prepare("INSERT INTO clients (Pseudo, Email, Motdepasse) VALUES(:Pseudo,:Email,:Motdepasse)");
                          $insertmbr ->execute([
                              '$pseudo'=>$Pseudo,
                               '$email'=>$email,
                              '$password'=>$password
                          ]);
                          $succesMessage ='votre compte a bien été créé!!!!';
                          header('location:register.php');
                      }
                      else{
                          $errorMessage = 'ce pseudo est deja utilisé...';
                      }
                    }
                    else{
                      $errorMessage = 'cet email existe déja...';
                  }
                }
                else{
                  $errorMessage = 'les mots de passe ne correspondent pas...';
              }
            }
            else{
              $errorMessage = 'votre email est invalide...';
          }
        }
        else{
          $errorMessage = 'ce pseudo est trop long...';
      }
    }
    else{
      $errorMessage = 'veuillez remplir tous les champs...';
  }
}
?>


<!DOCTYPE html>
<html lang="en" dir="ltr">
  <head>
    <meta charset="utf-8">
    <title>Input form</title>
    <link rel="stylesheet" href="style.css">
  </head>
  <body>
  <form action="" method="post">
        <div class="box">
          <h2>Formulaire Inscription</h2>

    <div class="inputBox">
        <input type="text" name="pseudo" required="">
        <label >pseudo</label>
    </div>
    <div class="inputBox">
        <input type="text" name="email" required="">
        <label>email</label>
    </div>
    <div class="inputBox">
        <input type="password" name="password" required="">
        <label>Motdepasse</label>
    </div>
    <div class="inputBox">
        <input type="password" name="password" required="">
        <label>ConfirmMotdepasse</label>
    </div>
        <input type="submit" name="valider" value="Je m'inscris">
      
          Already have account?<a href="register.php" style="text-decoration: none; font-family: 'Play', sans-serif; color: yellow;"> log in</a>
          </form>
        <?php

if(isset($erreur))
  {
    echo $erreur;
  }
   ?>
      </div>


      </body>
    </html>



    ?>