Retour a la ligne

Mammouth du PHP | 620 Messages

14 mars 2009, 13:29

bonjour,
pour mes news j'utilise un formulaire avec
<textarea name="news" maxlength="255"></textarea>
je stock donc ces news dans ma base de données mais quand je fais afficher mes news ma mise en page n'existe plus.

Exemple :

Je saisi pour ajouter a ma base :

bonjour,
aujourd'hui nous vous proposons 3 nouvelles galerie :
- montagnes
- rivieres
- Lacs

A bientot sur notre site internet

Fabrice

Et lorsque j'affiche j'ai :

bonjour, aujourd'hui nous vous proposons 3 nouvelles galerie :- montagnes- rivieres- LacsA bientot sur notre site internetFabrice.

Comment garder la mise en forme ?

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

14 mars 2009, 13:40

Le navigateur n'interprète pas les retours à la ligne... c'est à toi de lui dire explicitement à quel endroit il doit forcer un retour dans l'affichage. Il suffit pour cela d'inclure la balise <br /> dans le code source généré.

Tu peux le faire soit en remplaçant les retours à la ligne de ta saisie ("\n") par cette balise, ou en utilisant la fonction php nl2br() au moment de l'affichage, pour automatiquement ajouter cette balise à chaque fois que ta chaine comporte un retour à la ligne :)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Mammouth du PHP | 686 Messages

15 mars 2009, 11:19

utiliser la fonction php nl2br() au moment de l'affichage
On en apprends tous les jours des fonction qui nous facilitent la vie !!!
Et dire que je m'embetait a faire ca :
$ligne = "</p><p style="margin-top:0px; margin-left:13px; margin-bottom:0px;" align="left">";
$commentaire = str_replace(chr(13),$ligne,$commentaire);

ViPHP
ViPHP | 1996 Messages

15 mars 2009, 12:31

Le navigateur n'interprète pas les retours à la ligne... c'est à toi de lui dire explicitement à quel endroit il doit forcer un retour dans l'affichage. Il suffit pour cela d'inclure la balise <br /> dans le code source généré.

Tu peux le faire soit en remplaçant les retours à la ligne de ta saisie ("\n") par cette balise, ou en utilisant la fonction php nl2br() au moment de l'affichage, pour automatiquement ajouter cette balise à chaque fois que ta chaine comporte un retour à la ligne :)
Hmmm il me semble que nl2br ajoute <br> et non <br /> (conforme W3C). Cela a été corrigé ?
It is nice to be important but it is more important to be nice
http://www.aureuswebfactory.fr