Problème avec "l'id" ds 1 requête SQL(My
hoida
Messages postés
26
Statut
Membre
-
hoida Messages postés 26 Statut Membre -
hoida Messages postés 26 Statut Membre -
Bonjour,
Je suis confronté à un petit problème avec une requête SQL dans MySQL sous PHP. J'ai une table dans une base de donnée MySQL dont la description est donée sur ce lien : https://www.cjoint.com/?cAayHxTah1
J'ai un extrait de mon script php qui traite cette table :
Les problèmes que j'ai sont :
Si je garde la requête :
comme telel, l'exécution de mon script me donne le message d'erreur :
Incorrect integer value: '' for column 'id' at row 1.
Quand je mets :
A la deuxième exécution c'est à dire lorsque un message est déjà stocké et en gardant la dernière requête j'obtiens un message d'erreur : Duplicate entry '1' for key 1. Bref les requêtes marchent si je modifie manuellement la valeur de l'id, ce qui n'est guère pratique même pour un débutant :-).
A noter que j'ai un autre problème si je garde ma requête comme telle :
Le message d'erreur étant : Field 'id' doesn't have a default value , alors que le champ id est bein en AUTO_INCREMENT.
Voilà.
Je sollicite l'aide de chacun pour m'expliquer le petit détail que je ne comprends pas pour résoudre ce problème. Comment puis-je contourner ce problème lors de la création de ma table?
Merci pour votre contribution.
Je suis confronté à un petit problème avec une requête SQL dans MySQL sous PHP. J'ai une table dans une base de donnée MySQL dont la description est donée sur ce lien : https://www.cjoint.com/?cAayHxTah1
J'ai un extrait de mon script php qui traite cette table :
<?php
mysql_connect("localhost", "usernonroot", "passwdfordb");
mysql_select_db("dbname_db");
/* 1) Enregistrement d'un message envoyé : */
if(isset($_POST['pseudo']) AND isset($_POST['message']))
{
if($_POST['pseudo'] != NULL AND $_POST['message'] != NULL )
{
$pseudo = $_POST['pseudo'];
$message = $_POST['message'];
$message = nl2br($message);
mysql_query("INSERT INTO livre_dor VALUES ('', '" . $pseudo . "', '" . $message . "')") ;
}
}
?>
Les problèmes que j'ai sont :
Si je garde la requête :
mysql_query("INSERT INTO livre_dor VALUES ('', '" . $pseudo . "', '" . $message . "')");
comme telel, l'exécution de mon script me donne le message d'erreur :
Incorrect integer value: '' for column 'id' at row 1.
Quand je mets :
mysql_query("INSERT INTO livre_dor VALUES ('1', '" . $pseudo . "', '" . $message . "')");
, l'exécution se déroule correctement.
A la deuxième exécution c'est à dire lorsque un message est déjà stocké et en gardant la dernière requête j'obtiens un message d'erreur : Duplicate entry '1' for key 1. Bref les requêtes marchent si je modifie manuellement la valeur de l'id, ce qui n'est guère pratique même pour un débutant :-).
A noter que j'ai un autre problème si je garde ma requête comme telle :
mysql_query("INSERT INTO livre_dor(pseudo, message) VALUES ('$pseudo', '$message')");
Le message d'erreur étant : Field 'id' doesn't have a default value , alors que le champ id est bein en AUTO_INCREMENT.
Voilà.
Je sollicite l'aide de chacun pour m'expliquer le petit détail que je ne comprends pas pour résoudre ce problème. Comment puis-je contourner ce problème lors de la création de ma table?
Merci pour votre contribution.
A voir également:
- Problème avec "l'id" ds 1 requête SQL(My
- What is my movie français - Télécharger - Divers TV & Vidéo
- Id telephone - Guide
- Document id lycamobile ✓ - Forum Mobile
- My pascal - Télécharger - Édition & Programmation
- My lockbox - Télécharger - Chiffrement