Saut de ligne php

Résolu
coconuss -  
Reivax962 Messages postés 3672 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'utilise Easy php pour ma base de données, j'entre des informations grâce à un formulaire et lorsque je les ressort sur une page (avec un "select"), il ne me ressort pas les sauts de ligne, alors que dans la base de données ils s'enregistrent bien.

Si quelqu'un a une solution

Merci beaucoup




6 réponses

termgsi Messages postés 678 Date d'inscription   Statut Membre Dernière intervention   39
 
Bonjour,

Pour l'affichage, saut de ligne <br>
0
Reivax962 Messages postés 3672 Date d'inscription   Statut Membre Dernière intervention   1 011
 
Bonjour,

Si tu affiches le code source de ta page html, tu devrais voir apparaître les sauts de ligne ; si c'est bien le cas, alors comme le dit termgsi le problème vient juste du fait qu'en HTML, un saut de ligne n'est pas le caractère \n, mais la balise <br /> (et heureusement, sinon il y aurait des sauts de ligne partout sur le net, ou alors on serait obliger d'écrire les pages sur une seule ligne !)

Xavier
0
coconuss
 
Oui mais je n'écris pas le texte, je le récupère d'une base de données, donc je ne peux pas mettre de <br>, en fait, pour m'expliquer un peu mieux.

Une personne va entrer des news dans un formulaire (une page php), cela va les enregistrer dans une base de données.

Et elles vont apparaître dans la page d'accueil du site.

Donc c'est une récupération de données. "select * from ... blablabla"

Merci pour vos réponses
0
Reivax962 Messages postés 3672 Date d'inscription   Statut Membre Dernière intervention   1 011
 
Dans ce cas, avant d'afficher les données (echo), il faut les modifier en remplaçant tous les \r\n et \n par des <br />.
Tu peux utiliser la fonction str_replace() :
Au lieu de
echo $texte;
mets :
echo str_replace("\n", "<br />", str_replace("\r\n", "<br />", $texte));

(PS tu peux aussi le faier au moment de l'enregistrement : tu remplaces les sauts de ligne par des <br /> avant de mettre le texte dans la base de données)

Xavier
0

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

Posez votre question
coconuss
 
Merci, ça marche !!
0
Reivax962 Messages postés 3672 Date d'inscription   Statut Membre Dernière intervention   1 011
 
Tiens en fait, cette fonction est intégrée de base à PHP :
https://www.php.net/manual/fr/function.nl2br.php

Donc tu peux rendre ton code encore plus clair comme ça :

echo nl2br($texte);

Xavier
0