Insert into

Résolu/Fermé
sinfa Messages postés 3 Date d'inscription jeudi 6 mars 2014 Statut Membre Dernière intervention 6 mars 2014 - 6 mars 2014 à 10:25
sinfa Messages postés 3 Date d'inscription jeudi 6 mars 2014 Statut Membre Dernière intervention 6 mars 2014 - 6 mars 2014 à 11:34
Bonjour, j'ai un souci avec ma requête pour inserrer des données dans la base de données qui est chez 1AND1

voici ma requête :

$access_token = "BRIEUC";

$sql= "INSERT INTO player (user_id ,fid ,first_name ,last_name ,user_name) VALUES ('' , '45', '$access_token', 'bobu', 'bibo')";

$result=MySQL_query($sql) or die ("inrdict Req player");

mais quand je remplace "$access_token" par exemple "toto", ma requête marche

mais moi ce que je veux c'est de mettre des variables à la place.



Merci d'avance

1 réponse

Utilisateur anonyme
6 mars 2014 à 10:58
Bonjour

Je pense que tu nous fais une présentation un peu trop simplifiée de ton problème et que ça nous cache des éléments.
Tel que tu le présentes, si ça marche avec 'toto', ça devrait aussi marcher avec $access_token qui contient "BRIEUC".
Pour avoir plus de précisions sur l'erreur, peux-tu essayer :

$result=MySQL_query($sql) or die (mysql_error()); 
1
sinfa Messages postés 3 Date d'inscription jeudi 6 mars 2014 Statut Membre Dernière intervention 6 mars 2014
6 mars 2014 à 11:26
avant tout je te remercie pour ta réponse rapide.
j'ai utilisé
$result=MySQL_query($sql) or die (mysql_error());
et j'ai reçu ça comme erreur
Duplicate entry '45' for key 'fid'
0
flokocha Messages postés 1510 Date d'inscription lundi 8 mars 2004 Statut Membre Dernière intervention 10 octobre 2015 280
6 mars 2014 à 11:33
Tu as une contrainte d'unicité sur ta colonne fid, qui fait que tu ne peux pas insérer deux lignes avec le même contenu pour cette colonne.

Si tu remplaces le '45' de ta requête par un '99', tu devrais constater qu'elle fonctionne (à condition que tu n'aies pas déjà une ligne à 99, bien sûr).

Pour y remédier :
- soit la contrainte est voulue et légitime, et tu t'es retrouvé dans cette situation uniquement suite à tes tests, auquel cas il te suffit de supprimer ta ligne avant de faire un nouveau test
- soit la contrainte est voulue mais mal gérée, auquel cas c'est à toi de savoir ce que tu dois insérer dans cette colonne pour une entrée donnée
- soit la contrainte n'a aucun sens, auquel cas tu dois modifier la structure de ta table pour la faire sauter
0
sinfa Messages postés 3 Date d'inscription jeudi 6 mars 2014 Statut Membre Dernière intervention 6 mars 2014
Modifié par sinfa le 6/03/2014 à 11:56
merci je viens de voir mon erreur et je l'ai corriger

Merci flokocha c'était ça mon erreur et je l'ai corriger
0