Antislashs pas enregistrés malgré addslashes()
Bonjour,
Je n'arrive pas à enregistrer dans ma bdd des valeurs avec des antislashs.
Code PHP :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
$matricule = addslashes($_SESSION['matricule']);
$entite = addslashes($_POST['entite']);
$listenom = addslashes($_POST['listenom']);
$date = time();
// requête insertion
$requete = "
INSERT INTO `base`.`listes`
(`id_liste`, `matricule`, `entite`, `nom_liste`, `date`)
VALUES ('' , '$matricule', '$entite', '$listenom', '$date');
";
$insertion = mysql_query($requete) OR die('Requête invalide : ' . mysql_error());
if ( $insertion ) {
echo '<p>Enreg bdd ok</p>';
echo $requete;
} |
Si je donne par exemple la valeur "A" (avec les guillemets) au champ listenom dans mon formulaire, la requête obtenue avec l'echo est :
Code:
1 2
|
INSERT INTO `base`.`listes` (`id_liste`, `matricule`, `entite`, `nom_liste`, `date`) VALUES ('' , 'moi', 'BAT', '\"A\"', '1228402448'); |
Ce qui est correct puisque j'ai bien les antislashs ajoutés.
Or si je vais voir dans PhpMyAdmin aucune valeur n'a d'antislash. Cela me pose un problème à l'extraction des données, je fais un stripslashes() (qui est inutile...) et mes valeurs s'affichent mal.
Config :
Wamp 2.0c sous XP
PHP Version 5.0.3
MySQL 4.1.22
Magic quotes désactivés dans le php.ini
Est-ce que vous avez une idée de l'origine du problème ? Moi je n'y comprend rien :koi:
Merci d'avance !