IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Espace dans un textarea


Sujet :

Langage PHP

  1. #1
    Membre confirmé
    Inscrit en
    Mars 2007
    Messages
    75
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 75
    Par défaut Espace dans un textarea
    Bonjour a tous ,

    Voila je recherche une petite fonction en php qui me permettrai via un textarea d'intrepreter les espaces.

    Je m'explique

    En fait le le textarear va servir pour un systeme de news donc il doit pouvoir etre modifiable facilement.Donc dans mon textarea je rentre mon texte avec mes espace et tout et quand je l'affiche il me colle tout

    J'avais trouver une petite fonction qui fonctionne mais il y a un hic

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function change_nr2br ($ma_variable){
    $etape_1 = str_replace("\n", '<br />', $ma_variable);
    $etape_2 = str_replace("\r", '', $etape_1);
    return $etape_2;
    }
    Cette fonction fais bien ce que je veux mais en fait c'est une fois que je modifie mon textarea il me colle tout



    Je voudrai qu'il m'interprete mon code comme je l'ai coller si possible ou au pire avec les <br> mais pas tout a la suite

    voila merci d'avance pour votre aide

  2. #2
    Rédacteur
    Avatar de Yoshio
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    1 732
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 732
    Par défaut
    Laisse le \r\n et rajoute le <br/>

    Toute façon les \n ne sont pas interpréter à l'affichage. (Juste qd tu affiche la source c'est utile lol)

  3. #3
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Par défaut
    Ce code n'est pas portable : que va donner votre sortie pour les utilisateurs de systèmes Mac où les sauts de ligne sont juste '\r' ? La fonction native nl2br de PHP ne vous convient-elle pas ? Elle ajoute une balise <br /> avant le(s) caractère(s) de nouvelle ligne alors que la vôtre les remplace purement et simplement.

    Vous ne devriez appliquer des fonctions de "formatage" du texte (nl2br ou variantes en sont une) qu'à leur affichage et non à leur insertion ou modification en base de données. Il est ainsi plus facile de s'y retrouver et les données, ainsi brutes, peuvent être réutilisées dans n'importe quel contexte (création de PDF, affichage formaté HTML, affichage dans un formulaire, ...).

  4. #4
    Membre confirmé
    Inscrit en
    Mars 2007
    Messages
    75
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 75
    Par défaut
    oui a la base j'avais utilisais nl2br mais le hic est que a chaque fois que j'edit il me rajoute les <br> donc si j'edit 10 fois j'ai 10 <br>

    C'est pour cela que j'ete parti sur cette fonction

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2007
    Messages : 23
    Par défaut
    C'est pour ça qu'on dis d'utiliser cette fonction à l'affichage et non lors du stockage

  6. #6
    Membre confirmé
    Inscrit en
    Mars 2007
    Messages
    75
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 75
    Par défaut
    Citation Envoyé par Babssss
    C'est pour ça qu'on dis d'utiliser cette fonction à l'affichage et non lors du stockage
    ah pardon je n'avais pas bien lu mais par contre je comprend pas trop comment ca marche pour l'insertion dans ce cas?

    car a l'insertion il faut bien le faire 1 fois quand meme non?

    Suffit t-il de mettre juste des espace normale et faire une insertion classique et apres afficher un echo nl2br($ma_variable); ?

    merci d'avance

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2007
    Messages : 23
    Par défaut
    Tu l'insère brute dans ta base de données

  8. #8
    Membre confirmé
    Inscrit en
    Mars 2007
    Messages
    75
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 75
    Par défaut
    ca marche nikel merci beaucoup j'aurai appris quelque chose ce soir

    Comme quoi pas la peine d'allez chercher tres loin des fois

    merci a vous tous

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [php/MySql]Espace indésirable dans un textarea
    Par Kaori dans le forum Requêtes
    Réponses: 4
    Dernier message: 26/03/2016, 11h37
  2. [Forum] Insertion d'espace dans le remplissage dynamique d'un textarea
    Par rominous41 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 15/07/2011, 12h45
  3. Les espaces dans une String vers une <TextArea>
    Par loopx dans le forum Servlets/JSP
    Réponses: 6
    Dernier message: 21/03/2008, 15h37
  4. Réponses: 9
    Dernier message: 06/11/2007, 13h36
  5. [Access] Nom d'une table avec un espace dans SQL
    Par Corsaire dans le forum Langage SQL
    Réponses: 7
    Dernier message: 21/04/2006, 16h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo