|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre éclairé
![]() Inscription : juillet 2005 Messages : 1 221 ![]() |
Bonjour,
J'affiche un message dans un textarea, pour le modifier. Dans le message il y a des <br>. Comme je veux que le message dans le textarea s'affiche de la même manière que dans la page, je remplace les <br> par des \n. Manque de pot, j'ai deux fois trop de \n au final : là où il y avait un retour à la ligne, donc un <br>, je me retrouve dans le textarea avec un saut de ligne, donc deux \n. le code est simple... : Code :
$contenu=str_replace("<br>", "\n", "$contenu"); Question simple : il faudrait bien sur n'avoir qu'un \n au lieu de deux. Merci
__________________
C'est pas parce que j'ai tort que vous avez raison. |
|
|
00
|
|
|
#2 |
|
Inactif
![]() Inscription : septembre 2004 Messages : 11 753 ![]() |
A ma connaissance \n correspond qu'à un saut de ligne pas deux
|
|
|
00
|
|
|
#3 |
|
Membre éclairé
![]() Inscription : juillet 2005 Messages : 1 221 ![]() |
Bah oui chez moi aussi
ça c'est ce que j'ai avant, dans le code source de la page : Cela s'affiche dans la page ça c'est ce que ça m'affiche dans le textarea : On voit bien qu'il y a un espace de plus. Et ensuite à la validation, il ressort donc deux <br> **edit** Un autre exemple : le texte dans la page est comme ça : J'enlève le str_replace et il s'affiche dans le textarea: ==> on constate qu'en plus du bonjour, le saut de ligne est conservé. Donc si j'ajoute le str_replace, ça me conserve le /n et en plus ça me transforme le <br> en nouveau \n.
__________________
C'est pas parce que j'ai tort que vous avez raison. |
|
|
00
|
|
|
#4 |
|
Membre éclairé
![]() ![]() Grégory H.Consultant-Formateur Tests Logiciels Inscription : décembre 2002 Messages : 156 ![]() |
Essaye ainsi :
Code :
$contenu=eregi_replace("<br>+\n*", "\n", "$contenu");
__________________
Qui a dit impossible ? C'est juste un peu plus compliqué. |
|
|
00
|
|
|
#5 |
|
Membre éclairé
![]() Inscription : juillet 2005 Messages : 1 221 ![]() |
Non ça ne fonctionne pas non plus.
J'ai essayé d'enlever le *, ne comprenant pas trop à quoi il sert, mais ç'est pareil.
__________________
C'est pas parce que j'ai tort que vous avez raison. |
|
|
00
|
|
|
#6 |
|
Membre éclairé
![]() ![]() Grégory H.Consultant-Formateur Tests Logiciels Inscription : décembre 2002 Messages : 156 ![]() |
Ca marche très bien chez moi
Avant : Après : Petite explication sur les regex utilisés : + : au moins une fois * : aucun ou plusieurs
__________________
Qui a dit impossible ? C'est juste un peu plus compliqué. |
|
|
00
|
|
|
#7 | ||
|
Inactif
![]() Inscription : septembre 2004 Messages : 11 753 ![]() |
moi c'est un peu barbare lol :
Code :
|
||
|
|
00
|
|
|
#8 | |
|
Membre éclairé
![]() ![]() Grégory H.Consultant-Formateur Tests Logiciels Inscription : décembre 2002 Messages : 156 ![]() |
Citation:
__________________
Qui a dit impossible ? C'est juste un peu plus compliqué. |
|
|
|
00
|
|
|
#9 | ||||
|
Membre éclairé
![]() Inscription : juillet 2005 Messages : 1 221 ![]() |
Citation:
Citation:
Code :
**edit** Un autre exemple : le texte dans la page est comme ça : Code : J'enlève le str_replace et il s'affiche dans le textarea: ==> on constate qu'en plus du bonjour, le saut de ligne est conservé. Donc si j'ajoute le str_replace, ça me conserve le /n et en plus ça me transforme le <br> en nouveau \n.
__________________
C'est pas parce que j'ai tort que vous avez raison. |
||||
|
|
00
|
|
|
#10 |
|
Membre éclairé
![]() Inscription : juillet 2005 Messages : 1 221 ![]() |
Conclusion je fais cela et ça fonctionne :
Code :
$contenu=eregi_replace("<br>", "", "$contenu"); J'importe mon texte depuis la BD où les <br> sont tels quels. Une fois affiché dans le textarea ils sont automatiquement transformé en \n donc. (merci pour votre aide les gars) **edit** Vous avez pas un bout de code vite fait pour supprimer les <br> à répétitions, disons pas plus de deux de suite dans le message et aucun à la fin de celui-ci ?
__________________
C'est pas parce que j'ai tort que vous avez raison. |
|
|
00
|
|
|
#11 | |
|
Membre éclairé
![]() ![]() Grégory H.Consultant-Formateur Tests Logiciels Inscription : décembre 2002 Messages : 156 ![]() |
Citation:
__________________
Qui a dit impossible ? C'est juste un peu plus compliqué. |
|
|
|
00
|
|
|
#12 |
|
Inactif
![]() Inscription : septembre 2004 Messages : 11 753 ![]() |
Ce qui est sur c'est que nos tests marchent avec les expressions ci-dessus...
Mais ce doit être avec le texte à mettre dans le textaera qui doit pas correspondre avec l'exemple que tu nous as donné. Mais bon le problème est résolu |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com