Problème avec nl2br et saut de ligne.
murof
-
murof -
murof -
Bonjour,
J'ai un script qui utilise une zone TXT dans une base Mysql.
Dans cette zone les utilisateurs peuvent mettre des commentaires qui contienne des sauts de ligne.
Quand je veux afficher cette zone en infobulle les codes ascii 10, 13 (correspondant au CR retour charriot) l'affichage ne se fait pas.
Lorsque je supprime se saut de charriot l'affichage se fait.
Je suis donc passé par la commande nl2br pour générer des <BR/> dans ma zone, et ça ne marche toujours pas, et l'affichage ascii fait, je me rend compte que le CR et toujours présent et c'est lui qui me bloque.
J'ai testé en mettant A<BR/>B dans ma zone commentaire et j'ai bien un affichage:
A
B
J'ai également testé en mettant echo nl2br("a b"); directement dans le code php, c'est pareil, pas d'affichage!
Quelqu'un peut-il m'aider.
Merci
J'ai un script qui utilise une zone TXT dans une base Mysql.
Dans cette zone les utilisateurs peuvent mettre des commentaires qui contienne des sauts de ligne.
Quand je veux afficher cette zone en infobulle les codes ascii 10, 13 (correspondant au CR retour charriot) l'affichage ne se fait pas.
Lorsque je supprime se saut de charriot l'affichage se fait.
Je suis donc passé par la commande nl2br pour générer des <BR/> dans ma zone, et ça ne marche toujours pas, et l'affichage ascii fait, je me rend compte que le CR et toujours présent et c'est lui qui me bloque.
J'ai testé en mettant A<BR/>B dans ma zone commentaire et j'ai bien un affichage:
A
B
J'ai également testé en mettant echo nl2br("a b"); directement dans le code php, c'est pareil, pas d'affichage!
Quelqu'un peut-il m'aider.
Merci
A voir également:
- Problème avec nl2br et saut de ligne.
- Partage de photos en ligne - Guide
- Comment supprimer une page sur word avec un saut de page ? - Guide
- Formulaire en ligne de meta - Guide
- Mètre en ligne - Guide
- Saut de ligne chatgpt ✓ - Forum MacOS
3 réponses
echo nl2br("a b"); ??
Heu, à quoi ça sert ça ???
Pour faire simple, tu as un textarea :
01 - L'utilisateur le rempli
02 - Il valide le formulaire
03 - Tu traites le résultat du textarea avec nl2br AVANT stokage en bdd (et même mieux tu complètes pour avoir <br /> à la place de <br/> avec str_replace)
04 - Tu stockes
05 - Pour afficher tu vas chercher dans ta BDD et tu affiches en brut !
C'est plus clair comme ça ?
Heu, à quoi ça sert ça ???
Pour faire simple, tu as un textarea :
01 - L'utilisateur le rempli
02 - Il valide le formulaire
03 - Tu traites le résultat du textarea avec nl2br AVANT stokage en bdd (et même mieux tu complètes pour avoir <br /> à la place de <br/> avec str_replace)
04 - Tu stockes
05 - Pour afficher tu vas chercher dans ta BDD et tu affiches en brut !
C'est plus clair comme ça ?
Bonjour,
en fait un petit détail sur lequel tu es passé et qu'il est important de noter:
nl2br() ne remplace pas les \n par des <br /> mais ajoute des <br /> avant les \n !
Ce problème est expliqué http://www.infosprog.com/php/nl2br
Malgré tout, il est bizarre que ce \n qui reste t'empeche de voir ta phrase. Peut etre utilises-tu une balise <pre> ?
En tout cas, je te conseille de recoder ta propre fonction nl2br avec un simple strstr() ou tu remplaces tes retours chariots par des <br />
en fait un petit détail sur lequel tu es passé et qu'il est important de noter:
nl2br() ne remplace pas les \n par des <br /> mais ajoute des <br /> avant les \n !
Ce problème est expliqué http://www.infosprog.com/php/nl2br
Malgré tout, il est bizarre que ce \n qui reste t'empeche de voir ta phrase. Peut etre utilises-tu une balise <pre> ?
En tout cas, je te conseille de recoder ta propre fonction nl2br avec un simple strstr() ou tu remplaces tes retours chariots par des <br />