[Résolu]Question sous Smarty

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [Résolu]Question sous Smarty

par Invité » 20 déc. 2007, 15:11

Oui c'ets cela merci, j'ai trouvé une solution.

9a reste chaud le passage a Smarty :)

par Sedril » 20 déc. 2007, 14:39

Le problème vient de l'interpréteur de Smarty qui lorsq'il détecte une accolade croit avoir affaire à une commande smarty.

Regarde du côté de la commande smarty {literal} qui est employée pour signifier à l'interpréteur qu'il ne doit pas interpréter ce qu'il y a entre les 2 balises smarty.

@+

[Résolu]Question sous Smarty

par PseT » 20 déc. 2007, 12:46

Bonjour,

Je poursuit mon apprentissage de Smarty, je souhaite donc utilisé un menu (Transmenu), je doit initialisé le menu dans le fichier .tpl mais voila j'au soucis avec le javascript.

Je passe d'abord les champs de mon menu depuis la base de donnée : array_push($aRecordMenu, $aRowMenu);

Et ensuite sous le fichier template :

Code : Tout sélectionner

{literal} <script type="text/javascript" charset="utf-8"> function init() { //========================================================================================== // if supported, initialize TransMenus //========================================================================================== // Check isSupported() so that menus aren't accidentally sent to non-supporting browsers. // This is better than server-side checking because it will also catch browsers which would // normally support the menus but have javascript disabled. // // If supported, call initialize() and then hook whatever image rollover code you need to do // to the .onactivate and .ondeactivate events for each menu. //========================================================================================== if (TransMenu.isSupported()) { TransMenu.initialize(); {/literal} {section name=idx loop=$smarty_table_mysql} menu{$smarty_table_mysql[idx].id}.onactivate = function() { document.getElementById("{$smarty_table_mysql[idx].name|lower}").className = "hover"; }; menu{$smarty_table_mysql[idx].id}.ondeactivate = function() { document.getElementById("{$smarty_table_mysql[idx].name|lower}").className = ""; }; {/section} {literal} } } </script> {/literal}
Le hic viens de mes deux lignes avec document.getElementById qui génère une erreur :


Fatal error: Smarty error: [in header.tpl line 107]: syntax error: unrecognized tag: document.getElementById("{$smarty_table_mysql[idx].name|lower (Smarty_Compiler.class.php, line 446) in /home/..../libs/Smarty.class.php on line 1095

Je cherche donc une solution mais sans succès pour l'instant.

Merci