Problème MySQL en PHP

Résolu
Bonjour,
suite à l'execution du script suivant, ça me dit bien que l'inscription s'est bien déroulée, je reçois bien le mail avec toutes les données, mais il n'y a aucun enregistrement au niveau MySQL, lorsque je vais dans mon phpmyadmi, il n'y en a aucuns donc, voila ...

<?php
if ($_POST['password'] == $_POST['repassword'] and !empty($_POST['mail']) and !empty($_POST['nom']) and !empty($_POST['prenom']) and !empty($_POST['pseudo']) and !empty($_POST['password']) and !empty($_POST['repassword']))
{

// To
$to = 'jobertomeu@orange.fr';

// Subject
$subject = 'Inscription sur Musicmania';

// Message
$msg = 'Formulaire d/inscription de '.$_POST['prenom'];
$msg .= "\r\n\r\n";
$msg .= "\r\n\r\n";
$msg .= 'Nom : '.$_POST['nom'];
$msg .= "\r\n\r\n";
$msg .= 'Prenom : '.$_POST['prenom'];
$msg .= "\r\n\r\n";
$msg .= 'Pseudo : '.$_POST['pseudo'];
$msg .= "\r\n\r\n";
$msg .= 'mot de passe 1 : '.$_POST['password'];
$msg .= "\r\n\r\n";
$msg .= 'mot de passe 2 : '.$_POST['repassword'];
$msg .= "\r\n\r\n";
$msg .= 'mail 1 : '.$_POST['mail'];
$msg .= "\r\n\r\n";


// Function mail()
mail($to, $subject, $msg);

//-------------------------------------------------------------------------------------------------------------------------------------------------------------------------


$msg = 'Inscription sur MusicMania';
$msg .= "\r\n\r\n";
$msg .= "\r\n\r\n";
$msg .= 'Votre inscription a bien été enregistrée dans notre base de donnée, vous pouvez utiliser dès à présent votre compte';
$msg .= "\r\n\r\n";
$msg .= 'Voici vos identifiants :';
$msg .= "\r\n\r\n";
$msg .= "\r\n\r\n";
$msg .= 'Nom d\'utilisateur : '.$_POST['pseudo'];
$msg .= "\r\n\r\n";
$msg .= 'Mot de passe : '.$_POST['password'];
$msg .= "\r\n\r\n";
$msg .= "\r\n\r\n";
$msg .= "\r\n\r\n";

 $recipient = $_POST['mail'];
 $subject = "Inscription sur MusicMania";

 $mailheaders = "From: MusicMania<> \n";

 mail($recipient, $subject, $msg, $mailheaders); 


//--------------------------------------------------------------------------------------------------------------------------------------------------------------------------

mysql_connect("localhost","jorisags_joberto","pass");
mysql_select_db("jorisags_membres"); // Sélection de la base testst

$reponse = mysql_query("SELECT * FROM membres"); // Requête SQL
$donnees = mysql_fetch_array($reponse);

// On ajoute une entrée avec mysql_query
$pseudo = $_POST['pseudo'];
$mdp = $_POST['password'];
$mail = $_POST['mail'];
$nom = $_POST['nom'];
$prenom = $_POST['prenom'];
$phone = $_POST['phone'];

//----------

$date = date("d-m-Y");
$heure = date("H:i");

//-----------
$date0 = $sate + " - " + $heure;
mysql_query("INSERT INTO membres VALUES('', '$pseudo', '$mdp', '$prenom', '$nom', '$mail', '$phone', '$date0')");
mysql_close();
?>
<div id="body-right">
          <h2><b>Inscription</b></h2>
          <div class="box">
            <p>L'inscription s'est bien déroulée, vous pouvez désormais utiliser votre compte.</p>
            <p>&nbsp;</p>
            <p>Le Webmaster</p>
          </div>
        </div>
        <?php
} else {
?>

<div id="body-right">
          <h2><b>Inscription</b></h2>
          <div class="box">
            <p>Un problème s'est déroulée durant l'inscription, le pseudo est déja utilisé, veuillez en choisir un autre.</p>
            <p>&nbsp;</p>
            <p><a href="http://musicmania.user.fr/inscription">Retour</a></p>
            <p>&nbsp;</p>
            <p>Le Webmaster</p>
          </div>
        </div>
  
        <div class="clear"></div>
      </div>
      <div id="copyright">
        <div id="copyright-left"> Copyrigh 2009/2010t &copy; Tout droit reservé | Webmaster : </div>
      </div>
      <div class="clear">&nbsp;</div>
    </div>
  </div>
</div>
</body>
</html>
<?php } ?>


Voila ... Merci ;)
Configuration: Intel code 2 duo 3 GHz , 3 GO de RAM, Nvidia 8500GT (1GO), Windows Seven/XP/98SE + Linux, HDD 500 GO, Carte mère P5B Deluxe edition
tour : Madx Twister Black, Réhobus Aréogate II

5 réponses

  • Votes
  • Date
  • Date décroissante
  1. Trouvé !!! en fait, j'avais oublié une valeur dans "INTO etc..." donc, ça fait :

    $insert=mysql_query("INSERT INTO membres VALUES('', '$pseudo', '$mdp', '$prenom', '$nom', '$mail', '$phone', '$date0', '')") or die ("Pb requette: ".mysql_error());


    Voila, merci pour tout ;) Problème résolu

    a++++++
    1. C'est bon, j'ai copié/collé ton code en ne modifiant rien (sauf mon mdp ^^) et voila ce qu'il me répond :

      Pb requette: Column count doesn't match value count at row 1


      MErci beaucoup ;)
      1. j'ai trouvé une petite erreur et modifié un peu ton code, voir commentaires:
        <?php
        if ($_POST['password'] == $_POST['repassword'] and !empty($_POST['mail']) and !empty($_POST['nom']) and !empty($_POST['prenom']) and !empty($_POST['pseudo']) and !empty($_POST['password']) and !empty($_POST['repassword']))
        {
        
        // To
        $to = 'jobertomeu@orange.fr';
        
        // Subject
        $subject = 'Inscription sur Musicmania';
        
        // Message
        $msg = 'Formulaire d/inscription de '.$_POST['prenom'];
        $msg .= "\r\n\r\n";
        $msg .= "\r\n\r\n";
        $msg .= 'Nom : '.$_POST['nom'];
        $msg .= "\r\n\r\n";
        $msg .= 'Prenom : '.$_POST['prenom'];
        $msg .= "\r\n\r\n";
        $msg .= 'Pseudo : '.$_POST['pseudo'];
        $msg .= "\r\n\r\n";
        $msg .= 'mot de passe 1 : '.$_POST['password'];
        $msg .= "\r\n\r\n";
        $msg .= 'mot de passe 2 : '.$_POST['repassword'];
        $msg .= "\r\n\r\n";
        $msg .= 'mail 1 : '.$_POST['mail'];
        $msg .= "\r\n\r\n";
        
        
        // Function mail()
        $env_mail1=mail($to, $subject, $msg);
        
        //-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
        
        
        $msg = 'Inscription sur MusicMania';
        $msg .= "\r\n\r\n";
        $msg .= "\r\n\r\n";
        $msg .= 'Votre inscription a bien été enregistrée dans notre base de donnée, vous pouvez utiliser dès à présent votre compte';
        $msg .= "\r\n\r\n";
        $msg .= 'Voici vos identifiants :';
        $msg .= "\r\n\r\n";
        $msg .= "\r\n\r\n";
        $msg .= 'Nom d\'utilisateur : '.$_POST['pseudo'];
        $msg .= "\r\n\r\n";
        $msg .= 'Mot de passe : '.$_POST['password'];
        $msg .= "\r\n\r\n";
        $msg .= "\r\n\r\n";
        $msg .= "\r\n\r\n";
        
         $recipient = $_POST['mail'];
         $subject = "Inscription sur MusicMania";
        
         $mailheaders = "From: MusicMania<> \n";
        
         $env_mail2=mail($recipient, $subject, $msg, $mailheaders); 
        
        
        //--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
        
        mysql_connect("localhost","jorisags_joberto","pass");
        mysql_select_db("jorisags_membres"); // Sélection de la base testst
        /*
        ces deux lignes ne te servent a rien, car tu ne t'en sert pas pour verifier si pseudo existe déja
        $reponse = mysql_query("SELECT * FROM membres"); // Requête SQL
        $donnees = mysql_fetch_array($reponse);
        */
        // On ajoute une entrée avec mysql_query
        $pseudo = $_POST['pseudo'];
        $mdp = $_POST['password'];
        $mail = $_POST['mail'];
        $nom = $_POST['nom'];
        $prenom = $_POST['prenom'];
        $phone = $_POST['phone'];
        
        //----------
        
        $date = date("d-m-Y");
        $heure = date("H:i");
        
        //-----------
        $date0 = $sate + " - " + $heure; //la tu as une erreur tu as mis sate au lieu de date
        //ensuite tu peux faire plus simple par:
        $date0=date("d-m-Y - H:i");
        //rajout d'une trace en cas d'erreur
        $insert=mysql_query("INSERT INTO membres VALUES('', '$pseudo', '$mdp', '$prenom', '$nom', '$mail', '$phone', '$date0')") or die ("Pb requette: ".mysql_error());
        
        mysql_close();
        
        if($env_mail1 && $env_mail2 && $insert){ // si l'envoi des mail et l'enr dans BDD s'est bien fait
        ?>
        <div id="body-right">
                  <h2><b>Inscription</b></h2>
                  <div class="box">
                    <p>L'inscription s'est bien d&eacute;roul&eacute;e, vous pouvez désormais utiliser votre compte.</p>
                    <p>&nbsp;</p>
                    <p>Le Webmaster</p>
                  </div>
                </div>
                <?php
        } else {
        ?>
        
        <div id="body-right">
                  <h2><b>Inscription</b></h2>
                  <div class="box">
                    <p>Un probl&egrave;me s'est d&eacute;roul&eacute;e durant l'inscription, le pseudo est d&eacute;ja utilis&eacute;, veuillez en choisir un autre.</p>
                    <p>&nbsp;</p>
                    <p><a href="http://musicmania.user.fr/inscription">Retour</a></p>
                    <p>&nbsp;</p>
                    <p>Le Webmaster</p>
                  </div>
                </div>
          
                <div class="clear"></div>
              </div>
              <div id="copyright">
                <div id="copyright-left"> Copyrigh 2009/2010t &copy; Tout droit reservé | Webmaster : </div>
              </div>
              <div class="clear">&nbsp;</div>
            </div>
          </div>
        </div>
        </body>
        </html>
        <?php 
        } //fin du else enr et envoi mail
        }//fin du if controle des saisies 
        ?>