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 :

BBCode + HTML


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé

    Profil pro
    Inscrit en
    Mai 2002
    Messages
    641
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 641
    Par défaut BBCode + HTML
    Bonsoir,

    Sur mon CMS, je veux donner la possibilité d'utiliser un BBCode pour éditer les pages, en utilisant une balise [html][/html] pour inclure du code HTML. J'utilise la fonction nl2br pour remplacer les sauts de ligne par <br /> mais je voudrais que ça ne s'applique pas à l'intérieur des sections [html]. Comment faire ?

  2. #2
    Rédacteur/Modérateur

    Avatar de Antoun
    Homme Profil pro
    Architecte décisionnel
    Inscrit en
    Octobre 2006
    Messages
    6 292
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte décisionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2006
    Messages : 6 292
    Par défaut
    Je te suggèrerais d'utiliser un preg_replace_callback, avec une regex détectant ce qui n'est pas inclus entre <html> et </html>, et une fonction de callback encapsulant nl2br.

  3. #3
    Membre éclairé

    Profil pro
    Inscrit en
    Mai 2002
    Messages
    641
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 641
    Par défaut
    Citation Envoyé par Antoun Voir le message
    Je te suggèrerais d'utiliser un preg_replace_callback, avec une regex détectant ce qui n'est pas inclus entre <html> et </html>, et une fonction de callback encapsulant nl2br.
    J'ai l'expression suivante, qui sélectionne le texte entre [html] et [/html] : '/\[html\](.+?)\[\/html\]/s'. Comment modifier cette expression pour exclure le texte à l'intérieur de cette balise ?

  4. #4
    Rédacteur/Modérateur

    Avatar de Antoun
    Homme Profil pro
    Architecte décisionnel
    Inscrit en
    Octobre 2006
    Messages
    6 292
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte décisionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2006
    Messages : 6 292
    Par défaut
    Par exemple, avec ça, $1 et $3 contiennent le texte hors [html] :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     '/(.*?)\[html\](.+?)\[\/html\](.*?)/s'

  5. #5
    Membre éclairé

    Profil pro
    Inscrit en
    Mai 2002
    Messages
    641
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 641
    Par défaut
    Citation Envoyé par Antoun Voir le message
    Par exemple, avec ça, $1 et $3 contiennent le texte hors [html] :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     '/(.*?)\[html\](.+?)\[\/html\](.*?)/s'
    Ce que je voudrais c'est une expression qui fonctionne avec preg_replace_callback() pour appliquer une fonction sur tout le texte qui n'est pas inclut dans les balises [html]. Je ne pense pas que celle-ci convienne.

  6. #6
    Rédacteur/Modérateur

    Avatar de Antoun
    Homme Profil pro
    Architecte décisionnel
    Inscrit en
    Octobre 2006
    Messages
    6 292
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte décisionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2006
    Messages : 6 292
    Par défaut
    pourquoi ? tu peux appliquer ton callback à $1 et $3.

Discussions similaires

  1. [RegEx] HTML en BBCode dans un système de news
    Par Joe-La-Boule dans le forum Langage
    Réponses: 2
    Dernier message: 01/07/2008, 19h42
  2. [RegEx] Remplacement BBcode par HTML
    Par J0r_x dans le forum Langage
    Réponses: 4
    Dernier message: 27/11/2007, 14h47
  3. [RegEx] bbcode vers html qui ne marche pas
    Par jexl dans le forum Langage
    Réponses: 3
    Dernier message: 21/06/2007, 21h05
  4. Réponses: 9
    Dernier message: 23/07/2006, 20h18
  5. Convertir du BBcode en HTML
    Par psychoBob dans le forum Langage
    Réponses: 1
    Dernier message: 20/05/2006, 15h57

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