Problème MySQL en PHP

Résolu/Fermé
jobertomeu Messages postés 1189 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 5 février 2015 - 31 août 2009 à 22:22
jobertomeu Messages postés 1189 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 5 février 2015 - 31 août 2009 à 23:00
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 ;)

5 réponses

Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
31 août 2009 à 22:34
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 
?>
0
jobertomeu Messages postés 1189 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 5 février 2015 86
31 août 2009 à 22:39
Je teste ;)

Merci
0
jobertomeu Messages postés 1189 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 5 février 2015 86
31 août 2009 à 22:42
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 ;)
0
jobertomeu Messages postés 1189 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 5 février 2015 86
31 août 2009 à 22:56
Alors ? :$
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jobertomeu Messages postés 1189 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 5 février 2015 86
31 août 2009 à 23:00
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++++++
0