[PHP]Probleme de retour a la ligne
Résolu
emin3m95
Messages postés
42
Statut
Membre
-
PhP Messages postés 1774 Statut Membre -
PhP Messages postés 1774 Statut Membre -
Bonjour,
Mon probleme est simple et il est evoqué a de nombreuses reprises sur internet mais aps moyen de trouver une reponse qui fonctionne !
Je recupere un message dans un textarea dans une valeur envoyée par la methode POST, que j'enregistre dans une bdd puis que je ressors lors de l'affichage du message. Le probleme est que les retours a la ligne ne sont pas pris en compte !
J'ai essayé nl2br ainsi que de nombreuses fonctions de remplacement de \r\b \r \n par <br/> et <br> mais ca ne fait rien, ni avant l'enregistrement du message dans la bdd ni apres ! les retours a la ligne ne sont jamais remplacés par des <br/> ou <br>.
A contrario, ces messages s'envoient tres bien par mail...
Mon probleme est simple et il est evoqué a de nombreuses reprises sur internet mais aps moyen de trouver une reponse qui fonctionne !
Je recupere un message dans un textarea dans une valeur envoyée par la methode POST, que j'enregistre dans une bdd puis que je ressors lors de l'affichage du message. Le probleme est que les retours a la ligne ne sont pas pris en compte !
J'ai essayé nl2br ainsi que de nombreuses fonctions de remplacement de \r\b \r \n par <br/> et <br> mais ca ne fait rien, ni avant l'enregistrement du message dans la bdd ni apres ! les retours a la ligne ne sont jamais remplacés par des <br/> ou <br>.
A contrario, ces messages s'envoient tres bien par mail...
Configuration: Linux Firefox 2.0.0.6
7 réponses
-
Bsr
Hum étrange ...
Tu utilises quoi comme BDD : MySQL ?
Normalement dans un textarea tu n'utilises pas la fonction nl2br. Par contre il faut l'utiliser lorsqu'on place le contenu en tant que texte HTML.
Ex : $data est supposé contenir des retours à la ligne<?php $data = isset($_POST['data']) ? $_POST['data'] : ""; ?> <p>Contenu de $data en tant que texte non codant pour HTML : </p> <? echo nl2br(htmlentities($data));?> <p>Contenu de $data dans un textarea :</p> <textarea cols="50" rows="'4"><? echo htmlentities($data);?></textarea>
-
les <br> et autres figurent-ils dans l'enregistrement ds la bdd?
-
-
-
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
-
Merci, je crois que c'est bon mon probleme est résolu.
Ce n'etait pas grand chose en fait.
La solution etait bien de mettre nl2br() à la sortie. -
OK
Pense aussi à la fonction stripslashes / addslashes pour gèrer corretement les guillemets et les apostrophes et surtout à htmlentities pour éviter qu'un petit malin ne rentre du code HTML valide lors de la saisie ou pire du code JavaScript !