J'ai créé un formulaire de modif, càd avec des champs comportant comme valeurs celles déjà saisies précédemment.
Je ressors donc mes données brutes de ma base mysql, ce qui donnera par exemple :
$Adresse = row['adresse'];
$Observations = row['observations'];Ce sont des champs qui peuvent contenir des apostrophes du genre [C ' est moi]Ensuite, dans mon form, je mets :
<input type="text" name="adr" value="'.$Adresse.'">
<textarea name="observ">'.$Observations.'</textarea>Là, j'observe que pour ces valeurs affichées dans mes champs de formulaire, chaque apostrophe est échappée par un antislash.Par contre, quand je fais un simple "echo stripslashes($Adresse)", j'ai bien ma valeur correcte qui s'affiche, sans \ d'échappement
J'ai donc changé mon code en rajoutant des stripslashes :
<input type="text" name="adr" value="'.stripslashes($Adresse).'">
<textarea name="observ">'.stripslashes($Observations).'</textarea>Et là, même résultat, mes apostrophes sont toujours échappées par un \Et forcément, si on enregistre le formulaire (submit) sans avoir enlevé les \, eh bien au prochain affichage de mon form, je me retrouve avec un double voire un triple \ devant mes apostrophes, et ainsi de suite (car il doit sûrement être sauvegardé dans ma bdd comme un élément à part entière de mon texte) !!!
Ai-je manqué de comprendre qq chose dans l'utilisation de stripslashes(), ou bien s'agirait-il d'un comportement uniquement lié aux champs de formulaire ???
Comment résoudre ce pb SVP ?
Merci
Gwenda