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

Bibliothèques et frameworks PHP Discussion :

[Smarty] Problème d'affichage des balises HTML


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    178
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 178
    Par défaut [Smarty] Problème d'affichage des balises HTML
    Hi all,

    J'ai donc un soucis...
    Lorsque je crée des articles que je stocke dans ma base, je renseigne ceux-ci ave un WYSIWYG, puis je me protège à l'aide de htmlentities...

    Par contre, lorsque j'affiche mes données, Smarty va m'afficher mes balises HTML au lieu de me les interpréter!
    Par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <p>du texte <strong>gras, </strong><em>italique<strong> </strong></em>et <span style="text-decoration: underline;">souligne</span>,&nbsp; 15" et ensuite du texte</p>
    Je viens de me rendre compte que dans mon code source, le htmlentities a bien travaillé:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    lt;p&gt;du texte &lt;strong&gt;gras, &lt;/strong&gt;&lt;em&gt;italique&lt;strong&gt; &lt;/strong&gt;&lt;/em&gt;et &lt;span style=&quot;text-decoration: underline;&quot;&gt;souligne&lt;/span&gt;,&amp;nbsp; 15&quot; et ensuite du texte
    Ce qui est bizarre, c'est que quand j'affiche du côté admin, dans des textarea, je n'ai aucun soucis...
    Comment faire pour qu'il les interprète?

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    178
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 178
    Par défaut
    J'ai trouvé comment faire pour bien afficher : il faut modifier la variable lors de l'assignation avec la fonction html_entity_decode :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $smarty->assign("description", html_entity_decode($resultat[0][description_act_actu]));
    Par contre, comme vous voyez, j'utilise un tableau associatif ($resultat), et donc je ne peux pas utiliser la fonction sur mon tableau lorsque j'assigne tout le tableau en une fois pour boucler...
    Il faudrait que je modifie la variable du côté du .tpl, par exemple comme sur ce topic, mais c'est moche

    Je vais essayer aussi de créer mon propre modificateur de variable, comme Truncate par exemple, mais là c'est pas gagné

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    178
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 178
    Par défaut
    Voilà, du coup, j'ai créer mon propre modificateur de variable, rien n'est plus simpl, je pense même que je vais en créer d'autres, pour faciliter mes traitement.
    Pour ceux que cela intéresse, il y a plusieurs étapes à suivre :
    D'abord, il faut créer une page php qui, pour les modificateur, doit s'appeler "modifier.ma_fonction.php" qui faut stocker dans le répertoire "Plugins".

    Ensuite, il suffit de créer sa fonction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    function smarty_ma_fonction($string, $param){...}
    notez ici l'utilisation des '_' et non des '.' comme lors du nommage de la page.
    $string va correspondre à la variable appelant le modificateur,$param n'est pas obligatoire, il s'agit du (ou des) paramètre que vous souhaitez utiliser pour modifier votre chaine.
    n'oubliez pas de retourner quelque chose avec votre fonction!

    Ensuite, à l'utilisation côté .tpl, vous aurez
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    {$ma_variable|ma_fonction:param}

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

Discussions similaires

  1. Affichage des balises HTML et des photos dans la pop up
    Par youri89 dans le forum IGN API Géoportail
    Réponses: 1
    Dernier message: 04/09/2013, 17h07
  2. [CKEditor] Problème d'affichage des balises
    Par Taylix dans le forum Bibliothèques & Frameworks
    Réponses: 0
    Dernier message: 20/03/2012, 12h40
  3. affichage des balises html dans une page
    Par lecra dans le forum Langage
    Réponses: 2
    Dernier message: 04/02/2010, 13h31
  4. newsletter html affichage des balises
    Par jul.oob dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 25/04/2007, 14h42
  5. [XSLT] Affichage des balises xml en html via une xslt
    Par Eileen dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 20/04/2007, 15h53

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