Comment supprimer les retours chariot d'une variable

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Comment supprimer les retours chariot d'une variable

par Ripat » 19 août 2005, 13:18

ça maaarche !! (avec str_replace("\r\n", null, $txt)) Merci beaucoup :D (je peux remplacer les retours chariot par des null sans pb puisque nl2br() a déjà rajouté des <br /> avant)
Et pour ne pas oublier les irréductibles / pionniers / fanatiques / visionnaires (au choix) Linux:
str_replace(array("\r\n", "\n"), null, $txt);

par Cyrano » 19 août 2005, 13:13

[Résolu] alors :?:

par Nécropotåme » 19 août 2005, 13:07

ça maaarche !! (avec str_replace("\r\n", null, $txt)) Merci beaucoup :D (je peux remplacer les retours chariot par des null sans pb puisque nl2br() a déjà rajouté des <br /> avant)

par Ripat » 19 août 2005, 12:45

Tu veux dire passer la chaine à la fonction nl2br() après l'extraction de la base de données ? 0_o
ça ne changera rien au problème : les retours chariot y seront toujours...

Je viens aussi d'essayer, à tout hasard...
str_replace('\n','',$chaine)
sans résultat...
Rappel, windows génère des retours lignes composés de \r\n --> chr(13).chr(10)

Linux: \n char(10)

Ensuite, il faut les doubles guillemets quand tu utilises \r\n ou \n
str_replace("\r\n", null, $txt)
Enfin, fais attention, car tu sembles vouloir remplacer un retour ligne par un null. Ca pourrait poser des problèmes de mise en page comme pour le texte:

Code : Tout sélectionner

Première ligne deuxième ligne!
Qui deviendra:

Code : Tout sélectionner

Première lignedeuxième ligne!
Il y a des solutions à tous ces problèmes.

par Bobulum » 19 août 2005, 12:22

Essaye :
str_replace('<br />','',$chaine)

par Nécropotåme » 19 août 2005, 11:59

Tu veux dire passer la chaine à la fonction nl2br() après l'extraction de la base de données ? 0_o
ça ne changera rien au problème : les retours chariot y seront toujours...

Je viens aussi d'essayer, à tout hasard...
str_replace('\n','',$chaine)
sans résultat...

par Cyrano » 19 août 2005, 09:13

Suggestion : Enregistre ton texte sans le transformer et n'utilise nl2br qu'au moment d'afficher le texte. ce sera infiniment plus simple.

Comment supprimer les retours chariot d'une variable

par Nécropotåme » 19 août 2005, 01:05

Salut,

J'ai une zone de texte, dont je place le contenu dans une variable, pour la rentrer dans une table mysql. J'ai utilisé la fonction nl2br() pour que les retours chariot d'origine s'affichent ensuite. Le problème c'est que j'affiche cette chaine au moyen d'un petit script javascript. Mais, quand il y a des retours chariot dans cette chaine, ça fait bugger le script javascript.

Je voudrais donc supprimer ces retours chariot de la chaine (puisque nl2br() a déjà rajouté des "<br />" de toute façon).
//J'ai essayé sans succès :
str_replace(chr(13),'',$chaine)
//et
str_replace('\\n','',$chaine)
//(13 c'est le n° ASCII du retour chariot)
Quelqu'un pourrait-il m'aider svp ?