Problème d'inscription dans une base de données

Drillan Messages postés 41 Date d'inscription   Statut Membre Dernière intervention   -  
Nhay Messages postés 838 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
Je tente de créer un formulaire d'inscription qui refuse d'ajouter des informations à ma base de données pour une raison inconnue

Voilà ce que j'ai à ce jour :

<?php

include('bdd.php'); //Permet de contacter le serveur dans un fichier à part

?>


<form name="inscription" action="confirmation.php" method="POST">
  <label for 'prenom'>Prénom: </label>
  <input type="text" name="prenom" required placeholder="Prénom"/>
  <label for 'nom'>Nom: </label>
  <input type="text" name="nom" required placeholder="Nom"/>
  <label for 'passe'>Mot de passe : </label>
  <input type="password" name="passe" required/>
  <label for 'confirm_passe'>Confirmez le mot de passe : </label>
  <input type="password" name="passe" required/>
  <label for 'email'>Email: </label>
  <input type="email" name="email"/ required placeholder="Adresse e-mail">
  <label for 'telephone'>Téléphone: </label>
  <input type="telephone" name="telephone"/ required placeholder="ex: 0123456789">
  <select name="fonction" id="fonction" required="required">
    <option value="">Selectionnez votre fonction</option>
    <option value="choix1">Présiden(e)</option>       
    <option value="choix2">Vice-Président(e)</option>
    <option value="choix3">Adminstrateur</option>
    <option value="choix4">Directeur/trice</option>
    <option value="choix5">Travailleur social</option>
    <option value="choix6">Secrétaire</option>
  <span class="error_message"><?php if(isset($erreurfonc))echo $erreurfonc ?></span>
</select>
<input type="submit" value="Envoyer">
</form>



<?php


if(!empty($_POST['inscription'])){

if ( $_POST['confirm_passe'] != $_POST['passe'] ){
    echo "Les 2 mots de passe sont différents";
}

$req = $bdd->prepare('INSERT INTO inscrits (prenom, nom, passe, telephone, email, fonction, droits) VALUES(:prenom, :nom, :passe, :telephone, :email, :fonction, :droits)');
          $req->execute(array(
          'prenom' => $_POST['prenom'],
          'nom' => $_POST['nom'],
          'passe' => $_POST['passe'],
          'telephone' => $_POST['telephone'],      
          'email' => $_POST['email'],
          'fonction' => $_POST['fonction'],
          'droits' => $_POST['droits'],
          ));
}
?>


De plus, mon menu déroulant, qui est censé être obligatoire, ne l'est plus pour valider le formulaire alors qu'il l'était avant...
Quelqu'un aurait-il une idée sur le pourquoi du comment ?
Merci d'avance !
A voir également:

1 réponse

Nhay Messages postés 838 Date d'inscription   Statut Membre Dernière intervention   126
 
Bonjour,

Je ne vois pas de champs nommé inscription pour satisfaire ton if sur ton code.
Aucune validation php n'est présente pour tester la valeur de ta liste déroulante, tu ne que l'attribut required qui n'est pas satisfaisant.
Tu n'a plus qu'à rajouter un IF pour cela :)
0