Page 1 sur 1

une requette simplissime

Posté : 30 mai 2005, 15:30
par seayoung
Bonjour tout le monde,
voila je suis désoler mais je suis fatigué la .... (on commence bien la semaine :roll:
alors voila c'est tout simple mais je vois pas:
je voudrai insérer dans une bdd les donnée d'un formulaire.
voici ma requette:
mysql_query("INSERT INTO table
			VALUES('','', '".$_GET["nom"]."', '".$_GET["prenom"]."','".$date_naissance."','','".$_GET["mail"]."','','','','',
			'','')");
hey ba vous aller rire mais ca n'insère rien du tout ...
question pourquoi ??? :?
si vous avez une idée c surement tout bete mais la j ai pas trop les yeux en face des trous...
merci a vous

Posté : 30 mai 2005, 15:34
par zeus
Je dirais : tu es sûr que tes variables contiennent des valeurs ?

Est-ce que tu as fait afficher ta requête génerées ?

C'est peut être con, mais on a quelques fois des surprises

Posté : 30 mai 2005, 15:45
par seayoung
oui Zeus pour les valeurs je suis sure quelles sont pas vide car si elles sont vide mon formulaire n'est pas valide.
en revanche pas bete l histoire de voir ce que donne la requette v essayer.
Merci
Autrement ma requette a l air valide ?

Posté : 30 mai 2005, 15:49
par seayoung
voila ce que retourne ma requete lorsque je fait un echo d elle :

mysql_query("INSERT INTO ctlminfo VALUES('','', 'moi', 'lui','12121930','','[email protected]','','','','', '','')");

ce qui a l air plutot correcte

Posté : 30 mai 2005, 15:52
par zeus
Et si tu execute cette requete depuis phpMyAdmin ?

Est-ce que tu fait une capture d'erreur ?

Posté : 30 mai 2005, 16:15
par seayoung
merci j ai executé sur mysql et il m a sortie l erreur suivante:
#1136 - Column count doesn't match value count at row 1

a moi de jouer now ;) :wink:

Posté : 30 mai 2005, 16:19
par zeus
Tu as peut être une colonne douteuse.

Ou bien c'est qu'il y une colonne qui devrait être rempli mais qui ne l'est pas (la clé primaire entre autres...)

Posté : 30 mai 2005, 16:23
par seayoung
mmm
ma clé primaire est :
id int(22) en autoincrément et not null

Posté : 30 mai 2005, 16:30
par zeus
Alors, ca doit venir du fait que tu demande à ce que le champ "id" ne soit pas rempli.

Je pense que ta CP est la 1ere colonne de ta table... ?

Si tu as une colonne auto_increment, je te conseille de remplacer cette écriture :

Code : Tout sélectionner

mysql_query("INSERT INTO ctlminfo VALUES('','', 'moi', 'lui','12121930','','[email protected]','','','','', '','')");
par

Code : Tout sélectionner

mysql_query("INSERT INTO ctlminfo(champMoi, champLui, champChiffre, adresseMail) VALUES('moi', 'lui','12121930','[email protected]')");
MySQL va s'occuper tout seul de l'id et toi tu ne va remplir que les colonnes que tu veut remplir. Si tu as spécifié la clause default dans tes tables, il n'y aura pas d'erreur

Posté : 30 mai 2005, 16:41
par seayoung
ZEUS t es mon ZEUS
c'est souvent les solutions les plus simple qui sont les mieux
Milles merci !!!!!!! :lol:

Posté : 30 mai 2005, 16:42
par zeus
C'est rien !!!

Je t'envoi la facture à quelle adresse ? :langue:

Posté : 30 mai 2005, 16:57
par seayoung
mets ca sur ma note je règlerai tout d un coup ;)
:lol: