Ajout d'enregistrement et affichage d'enregistrements [PHP/HTML] - PHP - Programmation
Marsh Posté le 27-10-2003 à 14:08:14
Fred29 a écrit : |
C'est pas plutot un addslashes que tu veux faire avant de le mettre dans la base?
Marsh Posté le 27-10-2003 à 14:23:00
a vré dire chui complétement pommé sur ce sujet et chui tellement pommé que pour l'expliquer j'ai du mal.
Je suis certains que c'est un cas que rencontre tout le monde et je voudrais en fait faire un truc propre.
voilà en gros j'ai un formulaire de saisie d'utilisateur par exemple et j'ai un champ textarea pour saisir une description.
Mon formulaire appel un code php et dans mon code PHP je dois traiter 2 cas :
1/ aucun pb donc je procède à l'ajout
2/ un pb donc revenir en arrière
Tout d'abord quand j'arrive dans mon code PHP je protège ma variable avant de faire une requête SQL dessus. Pour cela je fais ce ke j'ai dit à savoir stripslashes suivi d'un mysql_escape_string.
Si ok j'ajoute avec $mavar avec protection appliquée
Si pas ok il faut que je retire ces machins appliquée à ma variable pour ensuite le réafficher comme c'était d'origine et là j'utilise le htmlentities et le nl2br
Je sais pas si j'ai bien expliqué ou pas
Marsh Posté le 27-10-2003 à 14:23:35
chui ptet complétement à la masse et que j'utilise les stripslashes, mysql_escape_string, nl2br, htmlentities à tord
Marsh Posté le 27-10-2003 à 14:35:39
stripslashes, c'est pour supprimer les slashes, (comme son nom l'indique), il faut déjà en avoir ajouté avant de les supprimer
(ou alors, j'ai rien compris )
Marsh Posté le 27-10-2003 à 14:01:34
Bonjour, voilà j'ai un pb.
Lorsque je saisi du texte dans un champ textarea je test les sauts de ligne. Par exemple je saisis
1
2
3
si je fais un echo $mavar juste après la validation du formulaire j'ai ceci :
1 2 3
Ensuite j'appliques un stripslashes suivi d'un mysql_escape_string avant de passer cette valeur à mysql.
A ce moment $mavar prend la valeur suivante :
1\r\n2\r\n3
Je ne sais pas s'il a enregistré les bonnes infos dans la base de données mais ensuite pour réafficher ça je fais mon SELECT et j'applique un htmlentities suivit d'un nl2br ce qui m'affiche au final :
1rn2rn3
Je vois pas où ça merde