Page 1 sur 1

Retour à la ligne lorsd'un post via un formulaire

Posté : 14 juil. 2016, 18:19
par blinz
Salut à tous.
Je met à disposition un formulaire et je rencontre un problème avec le champ "description".

Je souhaite que lorsqu'un visiteur met un post et fait des retour à la ligne ou des saut de ligne que son texte reste comme il la mit tout simplement.

Pourtant en faisant un echo de son post tout son texte est à la suite....

Le formulaire:
<label>Détail</label>
          <textarea class="form-control" rows="8" name="description"><?php echo !empty($_POST['description']) ? $_POST['description'] : NULL; ?></textarea>
          <?php echo !empty($erreurs['description']) ? '<div class="alert alert-danger" role="alert"><i class="fa fa-exclamation-triangle"></i>' .$erreurs['description'].'</div>' : NULL;?>
Et la page ou je fait le echo de celui ci:
echo stripslashes(ucfirst($ligne['description']))
Merci à vous

Re: Retour à la ligne lorsd'un post via un formulaire

Posté : 14 juil. 2016, 18:37
par MaximeT50
Salut,

Je n'ai peux être pas la meilleur solution mais au moins s'en est une.

Ton formulaire fait les retours à la ligne avec
"\r\n"
alors qu'en html c'est soit des paragraphes
<p></p>
ou des sauts de lignes simple
<br />
.

Dans ton php mets ça
$textearea = $_POST['description'];
$texte = str_replace("\r\n",'<br />',$texte);
echo $texte;
Logiquement tu devrais te retrouver avec tes saut de lignes. Tu peux ensuite améliorer le principe pour créer des paragraphes quand tu as un double saut de ligne, etc.

Après à toi d'adapter à ce ton formulaire et ton script en fonction du rendu que tu veux.

Re: Retour à la ligne lorsd'un post via un formulaire

Posté : 14 juil. 2016, 19:00
par or 1
il y a une fonction toute faite pour cela :
http://php.net/manual/fr/function.nl2br.php

Re: Retour à la ligne lorsd'un post via un formulaire

Posté : 14 juil. 2016, 19:08
par MaximeT50
Effectivement, je n'y pensais plus à celui-là, j'aime bien tripatouiller le code, du coup tant que je peux, je fait mes trucs moi même ^^

Donc blinz, oublis, plus ou moins, ce que je t'ai dis avant, dans ce cas précis, nl2br est largement suffisant :mrgreen:

Re: Retour à la ligne lorsd'un post via un formulaire

Posté : 19 mars 2022, 16:53
par Invité
il y a une fonction toute faite pour cela :
/manual/fr/function.nl2br.php
Bonjour, je te remercie, je cherchais quelque chose comme ça.