Bonjour,
J'ai un petit problème bloquant que je n'arrive pas à résoudre.
Je veux insérer une ligne dans une table Compte avec deux colonnes : numero et libelle.
À savoir que numero est du varchar(15) et libelle un blob.
Ma variable $libelle contient le contenu de libelle a rentrer, et numero est 4 (dans cet exemple).
Si je fais :
$requete ="INSERT INTO Compte (numero,libelle) VALUES (\"4\",\"".$libelle."\")";
ça fonctionne.
Si je fais :
$requete ="INSERT INTO Compte (numero,libelle) VALUES ('4','".$libelle."')";
ça fonctionne aussi.
Par contre, dès que je cherche à utiliser mysqli_real_escape_string(), ça ne fonctionne plus. J'ai des erreurs mysql.
j'ai essayé les lignes suivantes qui ne fonctionnent pas :
mysqli_real_escape_string($connexion, "INSERT INTO Compte (numero,libelle) VALUES ('4','".$libelle."')");
mysqli_real_escape_string($connexion, "INSERT INTO Compte (numero,libelle) VALUES (4,".$libelle.")");
mysqli_real_escape_string($connexion, "INSERT INTO Compte (numero,libelle) VALUES (\"4\",\"".$libelle."\")");
mysqli_real_escape_string($connexion, "INSERT INTO Compte (numero,libelle) VALUES ('4','$libelle')");
mysqli_real_escape_string($connexion, "INSERT INTO Compte (numero,libelle) VALUES (4,'$libelle')");
Bref, je vois plus rien.
D'autant plus que lorsque je regarde la page de php.net sur cette fonction, je ne vois pas la différence avec les exemples marqués.
La seul différence pourrait-etre la commande
mysqli_set_charset($connexion, "utf8");
Que je mets plus haut.
J'ai tenté de l'enlever, ça ne change rien.
Suite à une recherche sur ce forum, je suis tombé sur un post où il est dit qu'il faut utiliser mysqli_real_escape_string seulement sur les variables, et non pas sur la requête entière (ce qui est contraire aux pages d'explication; et je ne vois pas bien la différence). J'ai donc essayé d'appliquer mysqli_real_escape_string que sur les variables; ça ne change rien.
Si je peux toujours m'en passer pour cet exemple puisque je sais précisément ce qu'il y a dans mes variables, j'en aurais besoin plus loin; alors quelqu'un a t'il une solution ?
Il est possible que ce soit un truc qui vous crève les yeux;m ais moi, je ne vois plus rien à force.
Merci
Michel