Aller au contenu

Insertion dans la base de donnée


Sujets conseillés

Posté

Bonjour,

C'est mon premier post ici j'espere que je suis au bon topic :)

J'ai un souci avec un INSERT dont voici le code

		mysql_query("INSERT INTO ben_membres (`pseudo`, `mdp`, `mail`,
`nbpost`, `valid`, `temps`, `tempspost`, `rang`, `avatar`,
`localisation`, `www`, `mp`, `co`, `gmt`, `he`, `sign`, `signaff`,
`rangspec`, `afflist`)
VALUES('".$nom_ben."', '".$mdp."','".$mail."',
'0','0','".time()."',0,0,'','','',0,0,0,0,0,0,0,0")or die(mysql_error());
mysql_query("UPDATE benevole SET valider= 1 WHERE id_benevole=".$_GET['valider'] );

Mais voila j'ai une erreur qui s'affiche:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 6

Je ne voit pas d'ou cela vient :wacko:

La table dans laquelle je veut rentrer les données est une table du forum softBB, est-il possible qu'il y es tune protection de leur part? :?:

Merci et bonne journée

Posté

Tu pourrais donner la structure la table svp ?

Sinon il me semble que tu peut remplace time() qui est du php par la commande SQL : NOW()

Posté

`id` int(11) NOT NULL auto_increment,

`pseudo` varchar(64) NOT NULL,

`mdp` varchar(32) NOT NULL,

`mail` varchar(128) NOT NULL,

`nbpost` int(11) default '0',

`valid` tinyint(4) default '0',

`temps` int(11) default '0',

`tempspost` int(11) default '0',

`rang` tinyint(4) default '0',

`avatar` varchar(128) default NULL,

`localisation` varchar(64) default NULL,

`www` varchar(128) default NULL,

`mp` int(11) default '0',

`co` int(11) default '0',

`gmt` decimal(4,1) default '0.0',

`he` tinyint(4) default '0',

`sign` varchar(255) default NULL,

`signaff` tinyint(4) default '0',

`rangspec` tinyint(4) default '0',

`afflist` tinyint(4) default '0',

PRIMARY KEY (`id`)

Voila la structure ma table j'espere qu'il y a tous les renseignements ;)

ps: je met time() car j'utilise la requête dans une page web ;)

Posté (modifié)

L'instruction que vous que vous essayez d'exécuter est la suivante:

"INSERT INTO ben_membres (`pseudo`, `mdp`, `mail`,
`nbpost`, `valid`, `temps`, `tempspost`, `rang`, `avatar`,
`localisation`, `www`, `mp`, `co`, `gmt`, `he`, `sign`, `signaff`,
`rangspec`, `afflist`)
VALUES('"

En effet la chaîne est située entre les délimiteurs " et "

Si les guillemets doubles sont utilisés comme délimiteurs d'une chaîne, alors à l'intérieur de la chaîne, il faut utiliser des séquences d'échappements \".

Mais dans votre cas, les guillemets ne sont même pas obligatoires:

$temps=time();
mysql_query("INSERT INTO ben_membres (`pseudo`, `mdp`, `mail`,
`nbpost`, `valid`, `temps`, `tempspost`, `rang`, `avatar`,
`localisation`, `www`, `mp`, `co`, `gmt`, `he`, `sign`, `signaff`,
`rangspec`, `afflist`)
VALUES('nom_ben', '$mdp','$mail',
'0','0','$temps',0,0,'','','',0,0,0,0,0,0,0,0")or die(mysql_error());

Modifié par ezazea

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...