Pb mysql INSERT

Profil bloqué -  
Airmanbzh Messages postés 122 Statut Membre -
Bonjour à tous,

J'ai un petit soucis avec mon bout de code que voici :

mysql_query("
INSERT INTO commentaires(
CONTENT_COMM
, NO_NEWS
, AUTEUR_COMM
, TIME_COMM
, DATE_COMM
)
VALUES(
'" . $_POST["TB_CONTENT_COMM"] . "'
, '" . $_GET["id"] . "'
, '" . $_COOKIE["NOM_UTILISATEUR"] . "'
, CURTIME( )
, CURDATE( )
)
");

Sur les cinq valeurs, la 2e ne fonctionne apparemment pas, elle me renvoie 0 dans mon champs sql. J'ai pourtant bien un id dans ma barre d'adresse, et la valeur existe bien puisque quand je fais un echo $_GET["id"] j'ai bien la valeur correspondante.

Quelqu'un a t'il une idée?
Merci

Dans mon champs

13 réponses

Airmanbzh Messages postés 122 Statut Membre 9
 
Essaye d'enlever les apostrophes avant et après tes guillemets. Si c'est un entier qui est attendu il te refuse automatiquement le texte.

Cdt
0
Profil bloqué
 
Lorsque j'enlève les apostrophes, ça ne fonctionne plus. :'(
0
Airmanbzh Messages postés 122 Statut Membre 9
 
Autant pour moi, enlève juste les apostrophes de $_GET["id"]
(J'ai oublié de préciser ^^)
0
Profil bloqué
 
C'est ce que j'avais fais :). Je suis toujours en erreur sql. Une autre idée ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
M@dien Messages postés 451 Statut Membre 74
 
Essaye comme ça:
, " . $_GET["id"] . " 

Les apostrophes autour de la valeur indique à mysql que c'est une chaine de caractère. s'il attend un nombre il mettra 0 comme il ne comprend pas.
0
Profil bloqué
 
Avec les apostrophes j'ai aucun message d'erreur, la requête se passe apparemment bien. Juste la valeur inclus dans mon champs qui n'est pas celle que j'attend.

Lorsque j'enlève les apostrophes, la requête ne fonctionne plus. Le or die me revoie cela :

Erreur de connexion 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 ' 'wbulot' , CURTIME( ) , CURDATE( ) ' at line 11

Mon code actuel :

(ligne 11) if(isset($_POST["BT_Envoyer"]))
{
connect_mysql();
mysql_query("
INSERT INTO commentaires(
CONTENT_COMM
, NO_NEWS
, AUTEUR_COMM
, TIME_COMM
, DATE_COMM
)
VALUES(
'" . $_POST["TB_CONTENT_COMM"] . "'
, " . $_GET["id"] . "
, '" . $_COOKIE["NOM_UTILISATEUR"] . "'
, CURTIME( )
, CURDATE( )
)
") or die('Erreur de connexion '.mysql_error()) ;
mysql_close();
}

$idnews = $_GET["id"];
echo $idnews;

Je rappelle que l'echo a la fin me renvoie bien la bonne valeur.

Voici les info de mon champ:

Champ Type Interclassement Attributs Null Défaut Extra Action
NO_NEWS int(11) Non aucune

Quelqu'un a une idée ?
0
jeangilles Messages postés 816 Date d'inscription   Statut Membre Dernière intervention   186
 
ben fais un echo de ta requete tu verras bien là où ca va pas ^^
0
Profil bloqué
 
Jte suis pas la ...
0
jeangilles Messages postés 816 Date d'inscription   Statut Membre Dernière intervention   186
 
Ben ton erreur, elle est dans ta requête SQL
donc tu affiches ta requete, tu verras bien là où ca va pas :

tu fais un echo "
INSERT INTO commentaires(
CONTENT_COMM
, NO_NEWS
, AUTEUR_COMM
, TIME_COMM
, DATE_COMM
)
VALUES(
'" . $_POST["TB_CONTENT_COMM"] . "'
, " . $_GET["id"] . "
, '" . $_COOKIE["NOM_UTILISATEUR"] . "'
, CURTIME( )
, CURDATE( )
)
"
0
Profil bloqué
 
Heu t'es sur de toi?
Ça ne marche pas, et ça me parait un peu logique ...
0
jeangilles Messages postés 816 Date d'inscription   Statut Membre Dernière intervention   186
 
Quoi ?
un affichage de marche pas ?
c'est pas fait pour "marcher", c'est fait pour voir là où est ton erreur dans ta requête -_-
0
Profil bloqué
 
J'ai trouver d'ou venait le problème. J'ai n'ai aucune idée de pourquoi ça réagit comme cela.

Actuellement j'ai un if qui me dit en gros, si j'appuis sur le bouton envoyer, ça exécute mon script. (le if est ligne 11, voir au dessus. )

Si je garde le même script, mais que j'enlève le if. Tout marche impec. Je ne comprend pas ...
0
Airmanbzh Messages postés 122 Statut Membre 9
 
Mdr

Normal que ça deconne. Un bouton ne renvoit rien donc lorsque tu fais ton $_POST['BT_envoyer'], ça ne passe pas ^^.

Test sur autre chose si tu peux ou envoie un autre paramêtre (un type hidden par exemple).
0