Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2781 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  str_replace qui ne fonctione pas ...

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

str_replace qui ne fonctione pas ...

n°1094337
nero27
Posté le 24-05-2005 à 07:56:09  profilanswer
 

Voilà mon problème : je récupère un message dans un <textarea>
 
Dans la page de traitement du formulaire, je veux remplacer les fins de ligne du message par des <br> avant de l'envoyer dans la bdd.
Voici mon code :

Code :
  1. $description=$_POST['description'];
  2. $description = str_replace('\n','<br>',$description);
  3. $description = addslashes($description);


 
Mais, quand je vais chercher le message dans la bdd pour l'afficher, je n'ai qu'une seule ligne à l'affichage :/

mood
Publicité
Posté le 24-05-2005 à 07:56:09  profilanswer
 

n°1094339
afbilou
pouet your life
Posté le 24-05-2005 à 07:57:22  profilanswer
 

http://fr.php.net/manual/fr/function.nl2br.php


Message édité par afbilou le 24-05-2005 à 07:57:32
n°1094340
nero27
Posté le 24-05-2005 à 07:59:45  profilanswer
 

ok, merci beaucoup, je la connaissais pas celle-là :jap:

n°1094345
nero27
Posté le 24-05-2005 à 08:08:44  profilanswer
 

Par contre, si je veux revenir en arrière, je fais comment ?
Je viens d'essayer ça :

Code :
  1. $description = str_replace('<br />','\n',$description);


Ca m'enlève bien les <br />, mais ça me rajoute un saut de ligne.
 
Alors j'ai essayé ceci :

Code :
  1. $description = str_replace('<br />\n','\n',$description);


Mais ça ne fonctionne pas.
 
Comment puis-je faire ?


Message édité par nero27 le 24-05-2005 à 08:10:44
n°1094347
FlorentG
Posté le 24-05-2005 à 08:10:20  profilanswer
 

Héhé, faut justement ne pas stocker les <br /> dans la base. Il faut faire le nl2br au moment de l'affichage, et garder les \n dans la base ;)

n°1094349
nero27
Posté le 24-05-2005 à 08:11:10  profilanswer
 

ok, je vais faire comme ça alors : merci :)

n°1094574
cerel
Posté le 24-05-2005 à 10:50:21  profilanswer
 

nero27 a écrit :

Par contre, si je veux revenir en arrière, je fais comment ?
Je viens d'essayer ça :

Code :
  1. $description = str_replace('<br />','\n',$description);


Ca m'enlève bien les <br />, mais ça me rajoute un saut de ligne.
 
Alors j'ai essayé ceci :

Code :
  1. $description = str_replace('<br />\n','\n',$description);


Mais ça ne fonctionne pas.
 
Comment puis-je faire ?


 
Normal, quand tu utilise des ' a la place de " les characteres speciaux ne sont pas interpretes.
Donc il recherche \n et non pas "le charactere saut de ligne".
 
Donc essaye :

Code :
  1. $description = str_replace('<br />."\n","\n",$description);


 
Mais il est preferable de ne modifier le texte qu'a l'affichage, c'est a dire ne pas stocker les br dans la table, mais les ajouter uniquement lors de l'affichage.

n°1094625
nero27
Posté le 24-05-2005 à 11:22:00  profilanswer
 

Ok, merci pour l'info :jap:


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  str_replace qui ne fonctione pas ...

 

Sujets relatifs
regex et preg_replace()Petite question sur ereg_replace [résolu]
despecifier le caractere avec ereg_replace?Question à propos de la fonction "preg_replace"
optimisation de str_replace[php]preg_replace et limite | help me and get a free cookie
Problème preg_replace() et chiffres, numérospreg_replace et balises à arguments variables
requête SQL REPLACEreplace[resolu]
Plus de sujets relatifs à : str_replace qui ne fonctione pas ...


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)