Bonjour,

Voici une erreur que je ne trouve pas et que je n'explique pas.
Y voyez vous une explication ?
Merci

Dans un formulaire un champs de saisie utilisateur se nomme 'entite_nom'.
Je récupère ce nom puis je le traite avec la fonction mysql_real_escape_string
Puis je l'affiche (ma fonction message()).
Lorsque entite_nom saisi par l'utilisateur est 'Région d'Alsace' le message affiché est "Région d\'Alsace" ce qui correspond à ce que j'attend.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
	$nom_long=mysql_real_escape_string($_POST['entite_nom']);
	message($nom_long);
Immédiatement après, je souhaite enregistrer le champs saisi dans ma table sql debug.

La requête 1 ne fonctionne pas alors que la requête 2 fonctionne ce qui me prouve la bonne connexion à la table.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
base_connect();
$sql1="INSERT into debug (`c2`,`c3`) VALUES ('nom1','mysql_real_escape_string({$_POST['entite_nom']})')";
mysql_query($sql1);
 
$sql2="INSERT into debug (`c2`,`c3`) VALUES ( 'nom1','')";
mysql_query($sql2);
Je ne comprends pas pourquoi la requête 1 ne fonctionne pas puisque :
- la fonction mysql_real_escape_string fonctionne
- la connexion à la table debug fonctionne.