Probleme de requete SQL [Fermé]

Signaler
-
 le père -
Bonjour,
Voila j'ai une requête qui ne marche pas et j'ignore toujours pourquoi...
mysql_query('INSERT INTO cmd_client_fichier( id_client, num_ligne, nom_fichier) VALUES ('.$_SESSION['appletZAP']['id_client'].','.$_GET['num'].',\''.$mfichier.'\'')or die(mysql_error());

J'ai vérifié le format des champs ainsi que toutes les variables et ca ne viens pas de la ...
Ça doit être une erreur de syntaxe, mais impossible de la trouver..

3 réponses

Bonjour

Quel message d'erreur as-tu ?
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 1
j'ai pas préciser que je me connecter a 2 BDD dans le php .mais je pense pas que ça soit vraiment relier ..
Messages postés
2025
Date d'inscription
jeudi 22 septembre 2005
Statut
Membre
Dernière intervention
18 novembre 2015
202
Petit conseil :
mysql_query('INSERT INTO cmd_client_fichier( id_client, num_ligne, nom_fichier) VALUES ('.$_SESSION['appletZAP']['id_client'].','.$_GET['num'].',\''.$mfichier.'\'')or die(mysql_error()); 
//METS PLUTOT
$sSql = 'INSERT INTO cmd_client_fichier( id_client, num_ligne, nom_fichier) VALUES ('.$_SESSION['appletZAP']['id_client'].','.$_GET['num'].',\''.$mfichier.'\'';
mysql_query($sSql, TON_HANDLE_DE_CONNECTION)or die(mysql_error()." # ".$sSql); 

A noter qu'il faut remplacer TON_HANDLE_DE_CONNECTION par la variable retournée par ton mysql_connect, au moins tu sera sur de taper dans la bonne base de donnée, vu que t'en ouvres 2. et puis avec le die, ca t'affichera ta requête, ce qui est plus simple a débugger.
Tu peux aussi l'exécuter dans ton phpMyAdmin et tu peux avoir plus de pistes des fois pour ton erreur.
Pour voir quelle requête tu fais exactement :
$req='INSERT INTO cmd_client_fichier( id_client, num_ligne, nom_fichier) VALUES ('.$_SESSION['appletZAP']['id_client'].','.$_GET['num'].',\''.$mfichier.'\'';  
echo $req; 
mysql_query($req)or die(mysql_error()); 
tu es encore là ?
Le problème de syntaxe SQL est sans rapport avec celui de connexion et d'utilisation de 2 BDD.
Au passage, comment fais-tu pour avoir deux bases simultanément ?
Si tu les sélectionnes successivement, pas de problème et pas besoin d'identificateur de connexion ; mais si tu veux sélectionner les deux à la fois, ça suppose (je ne l'ai jamais fait) deux connexions au serveur, la seconde étant faite avec des arguments différents ou l'option new_link.