Aller au contenu

[Résolu][PHP]Lecture d'un textarea

Featured Replies

Posté(e)

Dans une de mes pages internet, je récupère le texte d'un

<textarea name="textecode" rows="10" cols="70"></textarea>

pour le mettre dans un fichier par la commande

fwrite($fp, stripSlashes($textecode));

Cependant, si je rentre ce texte la:

Un
mot
par
ligne

mon fichier de sortie contient

Un

mot

par

ligne 

Pour du code HTML, ce n'est pas trop grave, mais pour des codes sources qui utilise le tag <pre>, c'est vraiment génant.

Donc si quelqu'un à une solution ou une explication pour ce problème. :francais:

Merci d'avance

Modifié par Captain Hadock

Posté(e)
  • Auteur

$texte = str_replace("\r", "\n", $texte);
$texte = str_replace("\r\n", "\n", $texte);
$texte = str_replace("\n\n", "\n", $texte);

Sortie : sauts a la ligne avec un \n.

(fait rapidement sans essais)

Ça marche parfaitement.

Merci. :transpi:

Posté(e)

À quoi sert la deuxième ligne ?

Normalement après la première ligne, il n'y a plus de \r, non ?

Oui normalement il n'y a pas besoin de la seconde ligne mais comme il a dit, il fait tapper ça à la volée comme ça

Posté(e)

Je reposte car je suis confronté à un autre problème.

Moi quand j'utilise un textarea, je n'ai pas de /n ni de /r J'ai tout sur une seul ligne

Posté(e)
  • Auteur

Tu utilise bien cette façon de récupérer le texte?

stripSlashes($lavariable)

Je sais que ça a au moins une influence sur les ' donc peut être que ça gère aussi les \n.

Posté(e)

J'ai trouvé la raison ce matin:

Avec ma variable venant du textarea $text

je faisais:

$r=explode('\n',$text);

et la bonne solution est:

$r=explode("\n",$text);

" au lieu de '

Avec ' php n'interprète pas les \n ect

Et effectivement dans un autre site ou cela fonctionnait, j'avais mis "".

Merci de ta réponse qui allait dans ce sense également

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.