Formulaire PHP qui ne marche pas

Fermé
lecrafteur2010 - Modifié le 26 févr. 2020 à 14:57
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 - 26 févr. 2020 à 16:36
j'ai une base de donnés et quand je remplie mon formulaire rien ne se passe j'aurai besoin d'aide !

l'index.php


<?php session_start();

 $_SESSION['pseudo'] = "pseudo";
 $_SESSION['age'] = "age";

 ?>
<!DOCTYPE html>
<html>
<head>
 <title>titre</title>
</head>
<body>

<h1>votre profil :</h1>
<?php 

  if(isset($_SESSION['pseudo']) && (isset($_SESSION['age']))){


   ?>

   <p>votre pseudo : <?php echo $_SESSION['pseudo']; ?></p>
   <p>votre age : <?php echo $_SESSION['age']; ?></p>

   <?php

  }

 ?>

<form method="post">
 <input type="password" name="password"  id="password" placeholder="votre mdp" required><br><br>
    <input type="password" name="cpassword"  id="cpassword" placeholder="confirmez votre mdp" required><br><br>
     <input type="email" name="email"  id="email" placeholder="votre email" required><br><br>
    <input type="text" name="pseudo"  id="pseudo" placeholder="votre pseudo" required><br><br>
    <input type="submit" name="fromsend"  id="fromsend" value="s'inscrire"><br><br>

</form>

<?php



if(isset($_POST['fromsend'])){

 extract($_POST);

    if(!empty($pseudo) && !empty($email) && !empty($password) && !empty($cpasssword)){

  if($password == $cpassword){
    $options = [
     'cost' => 12,
 ];
 $hashpass = password_hash($password, PASSWORD_BCRYPT, $options);

 include 'database.php';
 global $db;
 global $test;

 $c = $db->prepare("SELECT email FROM users WHERE email = :email");
 $c->execute(['email' => $email]);
 $result = $c->rowCount();

 echo $result;

 if($result == 0){
   $q = $db->prepare("INSERT INTO users(:pseudo,:email,:password) VALUES(pseudo,email,password)");
  $q->execute([
   'pseudo' => $pseudo,
   'email' => $email,
   'password' => $hashpass
  ]);
  echo "le compte a été créé";
 } else {
  echo "echec de la création du compte : un identifiant avec cet email exite déjà !";
 }





  }



 // if(password_verify($password, $hashpass)){
 //  echo "bon mdp";
 // } else {
 //  echo "mauvais mdp";
 // }


 

}else{
 echo "veuillez remplir tous les champs";
}

}

?>

<?php include 'menu.php';

echo "test";

?>
</body>
</html>


et le database.php

 <?php

define('HOST','localhost');
define('DB_NAME','siteweb');
define('USER','root');
define('PASS','');
echo "conect > ok";
try{
 $db = new PDO("mysql:host=" . HOST . ";dbname=" . DB_NAME, USER, PASS);
 $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
 echo "conect > ok";
} catch(PDOException $e){
 echo $e;
} 

?>
<?php 

$test = "conect";

 ?>


merci d'avance !!

1 réponse

jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
26 févr. 2020 à 16:36
Bonjour

Commence par lire et appliquer ceci :
https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
et ça :
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code

Reviens nous voir ensuite avec le code modifié en conséquence si le souci persiste.

0