Mes enregistrements dans la base ne passent pas

AlexMarie007 - Modifié par jordane45 le 22/07/2015 à 13:38
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 - 22 juil. 2015 à 13:38
Bonjour, quelqu'un peut-il m'aider?
En fait, je suis un débutant en POO en PHP avec une BD

Le formulaire: inscription.php
<?php

    session_start();
    include('../connexion/pdoconnexion.php');
    include_once('fonction/inscription.class.php');
    
     //Appel de la fonction bdd
     $bdd = bdd();
    
       if(isset($_POST['pseudo']) and isset($_POST['motpasse']) and
            isset($_POST['email_membre']) and isset($_POST['civilite']) and 
              isset($_POST['nom_mbre']) and isset($_POST['prenoms_mbre'])){
            
           $inscription = new Inscription($_POST['pseudo'], $_POST['motpasse'],
                                           $_POST['email_membre'], $_POST['civilite'], 
                                            $_POST['nom_mbre'], $_POST['prenoms_mbre']);
            
             $verif= $inscription->verif();
             if($verif == 'ok'){
                   // Tout est bon
                 if($inscription->enregistrer()){
                       // Tout est bon continu
                    }
                    else {/* Erreur d'enregistrement*/
                        echo 'Une erreur s\'est produite lors de l\'enregistrement';
                        }
                   
                 }
                   else{
                     $erreur = $verif;  
                 }
            }

?>

<!DOCTYPE HTML>

<html>

<head>
  <title>INSCRIPTION</title>
  <link type="text/css" rel="stylesheet" href="css/designer.css">
  <meta http-equiv="content-type" content="text/html; charset=utf-8" />
</head>

<body  style="background: #CCAA44;"><br/>
    <div id="body"><br/>
        <?php include_once('header.php'); ?>
            <div id="cadre-horizon"><br/>
                <div class="bout-espace"> 
                    <center><label >NOS OFFRES</label></center>
                </div>
                <a href="connexion/pdoconnexion.php">Connexion</a>
            </div>
            <center>
                    
                    <div id="aff-contenu" class="posts">
                        <br/>
                           <div class="connect">   
                                <div class="connect1" >
                                         
                                    <fieldset id="fieldset" >
                                        <legend>
                                            <strong>
                                                Formulaire d'inscription
                                            </strong>
                                        </legend>
                                        <form method="post" name="" id="" action="inscription.php">
                                          <hr style="width: 450px;">
                                        <table width="100%" cellpadding="2" cellspacing="3" class="text">
                                            
                                            <tr width="12,50%%">                                   
                                                <td width="4,50%" align="right">
                                                    <strong>Civilité:</strong>
                                                </td>
                                                <td width="8%">
                                                    <input type="radio" name="civilite" value="M<sup>me</sup>" >M<sup>me</sup>
                                                  <input type="radio" name="civilite" value="M<sup>lle</sup>" >M<sup>lle</sup>
                                                  <input type="radio" name="civilite" value="M<sup>r</sup>" >M<sup>r</sup>
                                                </td>
                                            </tr>
                        <tr width="12,50%%">
                                                <td align="right" width="4.50%">
                                                    <strong>Nom:</strong>
                                                </td>
                             <td width="8%" >
                                                      <input type="text" name="nom_mbre" title="Nom de famille..." required="required" size="25"
                                                          onChange="javascript:this.value=this.value.toUpperCase();"      
                                                       >
                                                 </td>
                                             </tr>
                                             <tr width="12,50%%">
                                                 <td align="right">
                                                     <strong>Prénoms:</strong>
                                                 </td>
                                                 <td width="8%">
                                                     <input type="text" name="prenoms_mbre" title="Vos prénoms..." required="required" size="25"
                                                        onChange="javascript:this.value=this.value.toUpperCase();"
                                                      >
                                                 </td>
                                             </tr>
                                             
                                             <tr width="12,50%%">
                                                 <td align="right" width="4.50%">
                                                     <strong>Fonction/Profession:</strong>
                                                 <td width="8%">
                                                     <select name="designation">
                                                         <option value="">-----------------</option>
                                                          <?php 
                                                             
                                                           ?>
                                                     </select>
                                                 </td>
                                             </tr>
                                             <tr width="12,50%%">
                                                 <td align="right" width="4.50%">
                                                     <strong>Pseudo:</strong>
                                                 </td>
                                                 <td width="8%">
                                                     <input type="text" name="pseudo" title="Entrez votre pseudo..." required="required" size="25">
                                                 </td>
                                             </tr>
                                             <tr width="12,50%%">
                                                 <td align="right" width="4.50%">
                                                     <strong>Email professionnelle:</strong>
                                                 </td>
                                                 <td width="8%">
                                                     <input type="email" name="email" title="Email professionnelle..." required="required" size="25">
                                                 </td>
                                             </tr>
                                             <tr width="12,50%%">
                                                 <td align="right" width="4.50%">
                                                     <strong>Confirmation email:</strong>
                                                 </td>
                                                 <td width="8%">
                                                     <input type="email" name="email2" title="Confirmez votre email..." required="required" size="25">
                                                 </td>
                                             </tr>
                                             <tr width="12,50%%">
                                                 <td align="right" width="4.50%">
                                                     <strong>Mot de passe:</strong>
                                                 </td>
                                                 <td width="8%">
                                                     <input type="password" name="motpasse" title="Votre mot de passe..." required="required" size="25">
                                                 </td>
                                             </tr>
                                             <tr width="12,50%%">
                                                 <td align="right" width="4.50%">
                                                     <strong>Confirmation passe:</strong>
                                                 </td>
                                                 <td width="8%">
                                                     <input type="password" name="motpasse2" title="Confirmez votre mot de passe..." required="required" size="25">
                                                 </td>
                                             </tr>
                                        </table>
                                          <hr style="width: 450px;">
                                        <table>
                                             <tr>
                                                 <td align="right"></td>
                             <td>
                                                      <input type="submit" name="enoyer"  value="E N V O Y E R" class="bouton">
                                                      <input type="hidden" name="verif-ajout">
                                                      <?php
                                                        if($erreur){
                                                            echo $erreur;
                                                            }
                                                       ?> 
                                                  </td>
                                             </tr>
                                         </table> 
                                         <hr style="width: 450px;"> 
                                      </form>
                                   </fieldset>     
                                </div>     
                            <br/>   
           </div>
                        <br/>
                    </div>
             </center>
    </div>
</body>

</html>


La classe: inscription.class.php
<?php

include_once('connexion/pdoconcnexion.php');

//$bdd = bdd();

class Incription{
     
     private $pseudo;
     private $motpasse;
     private $motpasse2;
     private $email;
     private $email2;
     private $civilite;
     private $nom_mbre;
     private $prenoms_mbre;
     private $fonction;
     private $bdd;
     
       // Construction de la fonction
    public function __construct($pseudo,$motpasse,$motpasse2,$email,$rmail,$civilite,$nom,$prenoms,$fonction) {
        
       // declaration des champs
         
         $pseudo = htmlentities($pseudo);
         $motpasse= htmlentities($motpasse);
         $motpasse2= htmlentities($motpasse2);
         $email= htmlentities($email);
         $email2= htmlentities($email2);
         $civilite= htmlentities($sexe);
         $nom= htmlentities($nom);
         $prenoms= htmlentities($prenoms);
         $fonction= htmlentities($fonction);
    
      // intance de l'objet   
         $this->pseudo = $pseudo;
         $this->motpasse = $motpasse;
         $this->email_membre = $email;
         $this->civilite = $sexe;
         $this->nom_mbre = $nom;
         $this->prenoms_mbre = $prenoms;
         $this->bdd = bdd();
                 
     }
        
     public function verif(){
         
         // controler le pseudo de l(utilisateur
       if(strlen($this->pseudo) > 6 and strlen($this->pseudo) < 20){
             // Si le pseudo compris entre 6 et 20 alors pseudo bon, continue
              $code_syntaxe='#';
          if(preg_match($code_syntaxe, $this->email)){/*email bon*/
              
                    if(strlen($this->motpasse) > 5 and strlen($this->motpasse) > 10){
                        // Si le mot de passe compris entre 5 et 10, continue
                    
                            if($this->motpasse == $this->motdepasse2){
                                // Si les duex mot de passe identiques, continue  
                                }
                                else {
                                    $erreur='Les deux mots de passe doivet ètre identiques'; 
                                    return $erreur;
                                    }     
                        }
                        else {
                            $erreur ='Le mot de passe contenir au plus 10 caractès';
                            return $erreur;
                            }
              
                }
                 else {
                        $erreur='Mauvaise syntaxe de l\'adresse email';
                        return $erreur;
                    }
         
            }
            else {
                $erreur='Le nom utilisateur doit contenir au plus 20 caract&egarve;s';
                return $erreur;
            }
            
     }
      
     public function enregistrer(){

            // preparation de la requete
                $bdd = bdd();
             $sql_req = $bdd->prepare("INSERT INTO membres(pseudo,motpasse,email,civilite,nom_mbre,prenoms_mbre) VALUES(:pseudo, :motpasse, :email_membre, :civilite, :nom_mbre, :prenoms_mbre, :'.date(Y-m-d H:i:s ).')");
         
             // executer la requete
             $sql_req = execute(array(
                        'pseudo' => $pseudo,
                        'motpasse' => $motpasse,
                        'email' => $email,
                        'civilite' => $sexe,
                        'nom_mbre' => $nom,
                        'prenoms_mbre' => $prenoms
                         ));
         
     }
     
 }
 


les erreurs:
-Warning: include_once(connexion/pdoconcnexion.php): failed to open stream: No such file or directory in C:\wamp\www\gestionalertes-cnps\fonction\inscription.class.php on line 3

-Warning: include_once(): Failed opening 'connexion/pdoconcnexion.php' for inclusion (include_path='.;C:\php\pear') in C:\wamp\www\gestionalertes-cnps\fonction\inscription.class.php on line 3


Le souci est que mon include ne fonction pas;
Aucun enregistrement n'est effectif.

Alors si quelqu'un pourrait me venir en aide car mon projet est bloqué


EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici :
http://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code

Merci d'y penser dans tes prochains messages.
.

1 réponse

jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 344
22 juil. 2015 à 13:38
Bonjour,

Le message est clair ... il indique qu'il ne trouve pas le fichier...

Si ton répertoire connexion est à la racine de ton site.. il te suffit de faire :
 require_once 'connexion/pdoconnexion.php';


Si par contre il est dans un autre répertoire.. il faudra nous indiquer lequel.. ne connaissant par l'arborescence de ton site.

Bien entendu.. il faut également penser à bien respecter les minuscules/majuscules dans le nom de ton fichier....

Au passage... voici ton code remis en forme avec quelques "améliorations"
<?php

// DEMARRAGE PROPRE DES SESSIONS
if(session_id() == '') {
  session_start();
}

// INCLUDES
require_once('connexion/pdoconnexion.php');
include_once('fonction/inscription.class.php');
    
     //Appel de la fonction bdd
     $bdd = bdd();
    
// Récupération Propre des variables :
$pseudo = !empty($_POST['pseudo']) ? $_POST['pseudo']: NULL;
$motpasse = !empty($_POST['motpasse']) ? $_POST['motpasse']: NULL;
$email_membre = !empty($_POST['email_membre']) ? $_POST['email_membre']: NULL;
$nom_mbre = !empty($_POST['nom_mbre']) ? $_POST['nom_mbre']: NULL;
$prenoms_mbre = !empty($_POST['prenoms_mbre']) ? $_POST['prenoms_mbre']: NULL;
$civilite =  !empty($_POST['civilite'])?$_POST['civilite']:NULL;
		
		
if($pseudo && $motpasse && $email_membre && $civilite && $nom_mbre && $prenoms_mbre){
			
   $inscription = new Inscription($pseudo, $motpasse, $email_membre, $civilite, $nom_mbre, $prenoms_mbre);
            
   $verif= $inscription->verif();
		 if($verif == 'ok'){
				 // Tout est bon
		   if( !$inscription->enregistrer()){
				/* Erreur d'enregistrement*/
				echo 'Une erreur s\'est produite lors de l\'enregistrement';
		   }
		 }else{
			 $erreur = $verif;  
		 }
		}

?>


0
Rejoignez-nous