Saut de ligne et <br>

Résolu/Fermé
Charlus97 - 2 mai 2010 à 16:54
 Charlus97 - 2 mai 2010 à 20:33
Bonjours,

voila j'ai une petite question (bah oui je suis là pour ca ^^):

Existe il un moyen de convertir les saut de ligne en balise <br> ?

Je veut dire: que quand on fait un saut de ligne ca mettre une balise <br> a la place.

C'est pour un système de news qui lit le fichier texte ligne par ligne et quand dans ma new je met un saut de ligne ça le fait aussi dans mon fichier texte donc ca me le met comme une autre new...

voila merci d'avance ;)

15 réponses

avion-f16 Messages postés 19246 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 4 497
2 mai 2010 à 16:55
Si tu auras fais une recherche, tu serais sans doute tombé sur la fonction nl2br() !
https://www.php.net/manual/fr/function.nl2br.php
0
J'ai bien fait une recherche, je suis tombé la dessu mais je n,e comprend pas comment m'en servir et si c'est bien cela que je cherche car je le répete, je voudrai que quand je met un saut de ligne dans un formulmaire sa me le convertisse en <br>
0
avion-f16 Messages postés 19246 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 4 497
2 mai 2010 à 17:09
<?php
$message = nl2br($_POST['message']);
?>
0
Merci mais, cela me rajoute bien une balise <br /> dans mon fichier texte mais, cela fait aussi un saut de ligne dans mon fichier...

donc ca ne me sert pas vraiment mon but étant de ne pas mettre le saut de ligne dans mon fichier mais de mettre une balise <br> ou <br />
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
avion-f16 Messages postés 19246 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 4 497
2 mai 2010 à 17:21
Ça ne fait pas un saut de ligne, mais ça ne le retire pas.
Ça ne fais que rajouter avant le caractère de saut de ligne ("\n", il est invisible) la balise <br />.
0
Moi je cherche quelque-chose qui remplace un saut de ligne (quand on appuis sur "entrée") pas une balise <br> dans un formulaire.
0
avion-f16 Messages postés 19246 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 4 497
2 mai 2010 à 17:55
C'est ce que fait nl2br ...
Le retour à la ligne "\n" n'est pas pris en compte par le navigateur.
0
Ben nom j'ai testé avec ton bout de code en changean les variables mais ca met un <br> lors de l'enregistrement mais sa met aussi les saut de ligne ^^
0
.
0
avion-f16 Messages postés 19246 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 4 497
Modifié par avion-f16 le 2/05/2010 à 19:25
Donc toi tu veux que
Ligne 1 
Ligne 2
Se transforme en
Ligne 1<br>Ligne 2
, mais pas
Ligne 1<br> 
Ligne 2
?

Dans le navigateur, ça ne changera rien du tout, je ne vois pas pourquoi tu insistes.
Et juste pour info, fait ta requête d'insertion en ne faisant que protéger tes variables avec mysql_real_escape_string. nl2br et htmlspecialchars, c'est à l'echo.
Ton ordinateur ne fait pas ce que tu veux ... mais ce que tu lui dis de faire.
0
C'est exactement ca que je voudrais et SI ca vas changer quelque-chose car ca vas enregistrer dans une ligne différentes chque ligne de texte (dans le :Ligne1<br>
ligne 2

et ci ca l'enregistre dans une ligne différente et bien... ca fera comme une news en plus pour chaque ligne
0
avion-f16 Messages postés 19246 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 4 497
2 mai 2010 à 19:41
Ok, maintenant j'ai compris.
Mais pourquoi ne pas utiliser une base de données ou un fichier XML ? Ça serait bien mieux organisé ...

Si tu tiens absolument à garder ton fichier texte :
$chaine = preg_replace("\n",'<br/>',$chaine);
0
Warning: preg_replace() [function.preg-replace]: Empty regular expression in /home/httpd/t/i/n/tintin59231/serveur-test.videonyourdsi.franceserv.com/Videonyourdsi--V3/Test_news.php on line 74


une solution ?
0
avion-f16 Messages postés 19246 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 4 497
2 mai 2010 à 20:23
J'ai oublié les délimiteurs.
$chaine = preg_replace("#\n#",'<br/>',$chaine);
0
Merci tout marche a merveille ;)
0