difficulté avec espace membre
Bonjour,
J'essaie d'utiliser les scripts pour un espace membre qui semblent très bien, mais l'obtiens l'erreur suivante :
Erreur SQL !INSERT INTO membre VALUES("", "titi", "c740d6848b6a342dcc26c177ea2c49fe")
Incorrect integer value: '' for column 'id' at row 1
et je ne sais pas la corriger.
Merci si vous pouvez m'aider.
flamel
le 21/02/2008 à 11:44
Amery
Salut,
appremment il y a un problème avec la déclaration de ta variable id dans ta table.
Incorrect integer value: '' for column 'id' at row 1
Certainement que dans ta table, le champs "id" est défini comme "integer" (= nombre entier), alors que dans ta requête id="", donc à rien, donc pas nombre entier.
Soit tu définis dans ta requête une valeur entière pour id, soit tu modifies le champs id dans ta table.
Merci Amery de m'aider.
Est-ce la ligne (dans le script inscription) :
$sql = 'INSERT INTO membre VALUES("", "'.mysql_escape_string($_POST['login']).'", "'.md5(mysql_escape_string($_POST['pass'])).'")';
que je dois modifier ? et comment ?
Meci.
As tu vérifié la présence de l'auto-increment sur ton champ id ?
oui pour ato-increment.
le 21/02/2008 à 13:15
Amery
Quel est le "type" de ton champs id dans ta table et la "valeur/taille" ?
Merci.
type: int(11)
le 21/02/2008 à 15:09
Amery
Désolé, mais là, je ne vois pas ce qui bloque...
Essaie peut-être de lancer la requête en mettant un entier comme id à la place de "" :
<?php
$sql = 'INSERT INTO membre VALUES(1000, "'.mysql_escape_string($_POST['login']).'", "'.md5(mysql_escape_string($_POST['pass'])).'")';
?>
Et regarde ce que Sql te retourne...
Merci.
Si je mets 1000 , ça marche une fois, mais il faut que je change chaque fois ce paramètre pour que ça continue à marcher.
Je pense qu'où il y a 1000 , il devrait y avoir le total des lignes de la base + 1, qui changerait donc chaque fois, mais je ne sais pas comment le faire.
Merci de bien vouloir m'aider.
flamel
J'ai mis ' id ' comme paramètre et ça semble marcher.