Problème de requête (apparament) [Résolu]

Signaler
Messages postés
72
Date d'inscription
mardi 5 juillet 2005
Statut
Membre
Dernière intervention
8 février 2009
-
The_magicien
Messages postés
72
Date d'inscription
mardi 5 juillet 2005
Statut
Membre
Dernière intervention
8 février 2009
-
Bonjour à tous!

J'ai un petit problème avec un code en php (en fait, le problème se
situe au niveau de la requête Mysql). Alors, lorsque qu'un visiteur
souhaite s'inscrire sur mon site, il envoi une demande d'inscription
grâce à un formulaire qui envoi les infos sur BDD Mysql et ensuite les
infos continuent leur route! (en fait, ça a rien à voir avec le problème, voila pourquoi je n'en explique pas plus!) Bref,

Tout allais bien jusqu'à un certain moment où les infos n'étaient plus
envoyées sur BDD. Je regarde le code, rien de changé et rien
d'anormal...

Je tente moi-même d'envoyer une demande et le message situé ci dessous
m'est affiché. Je crois alors que cela vien du fait que la commande est
exclue des conditions des "if" de la page, je modifie, toujours rien.
Cependant, le texte de validation m'est toujours affiché sans aucune
erreur MYSQL du type "User password = NO" comme chacun a du en
rencontrer.

J'ai tout vérifié des variables utilisées lors de la connexion, jusqu'aux champs

où les infos doivent être stockées...

Pouvez-vous m'aider car je me trouve dans l'impasse et j'ai du fermer les inscriptions jusqu'à ce que le problème soit résolu.

Voici le code en question :

{
    $connection = mysql_connect($host,$name,$passe)
    or die ("La connection à la base de donnée est actuellement impossible, veuillez réessayer plus tard");
    $db = mysql_select_db($database, $connection)
    or die ("La connection à la base de donnée est actuellement impossible, veuillez réessayer plus tard");
    $resultat = "INSERT INTO stable (id,idtemp,Nom,Prenom,Pseudo,mdp,cmdp,tps,email,tours,techniques,mat,athemagicien,alouksa,Date,Statut,active,site,sexe) VALUES ('','$wpas','$nom','$prenom','$pseudo','$mdp','$cmdp','$temps','$sonmail','$co','$te','$mat','','','',now(),'aucune_reponse','0','http://$site','$sexe')";
    $sql = mysql_query($resultat); // A mon avis, l'erreur viendrait de là mais je n'en suis pas sûr...
   
    echo "<center> //Début du message de confirmation qui s'affiche sans problèmes
   
    Votre demande d'inscription a bien été envoyée
   
    !

   
   
Un email de confirmation a été envoyé à l'adresse : ";
    echo $sonmail;
    echo "
(Pour que votre inscription soit validée, vous devez valider votre adresse email dans le message qui vous a été envoyé)

Merci pour votre message , A bientôt . L'équipe de $votresite
   

</center>
[Retour à l'index du site]
";exit;
   
  }

6 réponses

Messages postés
15815
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
92
Ton code me paraît pas trop mal, ta requête SQL est correcte, par contre, n'oublie pas les addslashes (de PHP) dans ta requête ! Ca peut venir de là !

As-tu posé ta question sur le forum de php ? Je pense qu'il s'agit plus d'un problème de PHP/MySQL plutôt que du SQL lui même !

fait un : echo mysql_error() voir si le problème vient de ta requête.

Sinon, il ne faut jamais oublié de faire un :

$sql = mysql_query($resultat);
if (!$sql) {
    echo 'erreur ! : '.mysql_error();
}
Messages postés
15815
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
92
Tu as compté le nombre de champs de ta requête ?

Il y a un '' de trop :

$resultat =
"INSERT INTO stable
(id,idtemp,Nom,Prenom,Pseudo,mdp,cmdp,tps,email,tours,techniques,mat,athemagicien,alouksa,Date,Statut,active,site,sexe)
VALUES
('','$wpas','$nom','$prenom','$pseudo','$mdp','$cmdp','$temps','$sonmail','$co','$te','$mat','','',now(),'aucune_reponse','0','http://$site','$sexe')";
Messages postés
72
Date d'inscription
mardi 5 juillet 2005
Statut
Membre
Dernière intervention
8 février 2009

Je précise (normalement il n'y a pas autant d'espaces entre $resultat, = et "INSERT INTO"

Merci d'avance pour vos réponses.

Cordialement,

The_magicien
Messages postés
72
Date d'inscription
mardi 5 juillet 2005
Statut
Membre
Dernière intervention
8 février 2009

Ah!! Merci je suis content maintenant, j'ai enfin un message d'erreur!!! C'est frustrant quand ça marche pas et qu'aucun message d'erreur n'apparaît!!
Alors, voilà ce qui est affiché :

Column count doesn't match value count at row 1

Par contre, comment réparer, je ne sais pas...

Merci déjà pour ta réponse
DARKSIDIOUS
Messages postés
72
Date d'inscription
mardi 5 juillet 2005
Statut
Membre
Dernière intervention
8 février 2009

A bon?? où ça? je ne vois pas?? moi je compte 19 champs, et 19 variables (dont deux vides, jusque là rien de bizarre...)
Messages postés
72
Date d'inscription
mardi 5 juillet 2005
Statut
Membre
Dernière intervention
8 février 2009

En fait si!! c'était bien ça, je me demande comment j'ai pu louper ça!!

Merci encore Darksidious!!