Problème dans BBCODE

Pitfoul -  
 Utilisateur anonyme -
Bonjour à tous,
voilà j'ai conçu un BBCODE pour mon site, cependant j'ai la balise de citation:
{citation="pseudo"}le  message qui est cité{/cite}

Seulement voilà, comme je n'autorise pas le HTML, et que j'ai mis un htmlspecialchars lors de l'enregistrement dans la base de données, les " deviennent des "
Donc quand je formate lorsque j'appelle les enregistrements de la base de données et bien le BBCODE ne fonctionne pas car on obtient:
<code>{citation=&quot;pseudo&quot;}le  message qui est cité{/cite}
</code>

Je voudrais savoir comment faire pour passer ce problème, sans être amené à retirer mon htmlspecialchars.
J'ai donc eu l'idée de faire, avant le formatage du BBCODE une regex qui remplacera dans ma chaîne les " pour les remplacer par des " mais je ne sais plus comment le faire et je ne sais pas si sa marchera.

Quelqu'un saurait comment faire ?

Merci d'avance.

4 réponses

  1. Pitfoul
     
    Oups, comme il y a des caractères spéciaux, sa ne s'affiche pas correctement.

    Et en fait
    lors de l'enregistrement dans la base de données, les " deviennent des &quot; 

    et donc le BBCODE ne fonctionne pas car on obtient
    {citation=&quot;pseudo&quot;}le  message qui est cité{/cite}
    0
  2. Pitfoul
     
    Oups, comme il y a des caractères spéciaux, sa ne s'affiche pas correctement.

    Et en fait
    lors de l'enregistrement dans la base de données, les " deviennent des &quot; 


    et donc le BBCODE ne fonctionne pas car on obtient

    {citation=&quot;pseudo&quot;}le  message qui est cité{/cite}
    0
  3. Vigli Messages postés 175 Date d'inscription   Statut Membre Dernière intervention   26
     
    Bonjour, et bien tu peut faire tout simple comme Regex:
    $variable = str_replace ( '&quot;', '"', $variable);


    Bonne chance et bonne journée.
    0
  4. Utilisateur anonyme
     
    et pourquoi tu ne retire pas carement les guillemets (au lieu de retirer le htmlspecialchar) ... ?

    il faut juste modifier les scripts en consequence
    0