Lorsqu'un formulaire normal avec une zone de texte normale est soumis, tout saut de ligne saisi par l'utilisateur est transmis comme faisant partie des données. Ils sont canonisés en paires CR LF. Les sauts de ligne sont préservés si vous copiez la valeur d'un élément de zone de texte dans un champ caché.
Le problème est donc ailleurs. Il est possible que votre gestionnaire de formulaire côté serveur ne soit pas préparé à gérer les sauts de ligne. Ou peut-être utilise-t-il les données d'une manière qui fait que le saut de ligne perd de son importance, voire se perd complètement. Une erreur courante des novices consiste à écrire la valeur reçue d'un formulaire dans un document HTML - même si les sauts de ligne sont préservés, ils sont considérés comme équivalents à des espaces par les règles HTML, lorsqu'ils apparaissent en tant que contenu dans un élément normal (à l'opposé de, par exemple, l'élément "A"). textarea
o pre
).
Tout saut de ligne créé par automatique le retour à la ligne par le navigateur, et non par les actions de l'utilisateur, sont perdus par défaut. Il n'y a normalement aucune raison de les préserver, mais si vous souhaitez le faire, utilisez l'attribut wrap=hard
dans le textarea
élément. (L'attribut n'est pas standard mais largement supporté).