templates... [PHP] - PHP - Programmation
Marsh Posté le 03-07-2002 à 10:04:33
en gros : 
tu charges une ou plusieurs pages qui contient du code html. 
tu les parses pour remplacer les balises par le contenu. 
tu l'affiches. 
 
url, mais pas en français 
http://www.devshed.com/Server_Side [...] page1.html 
tu trouveras aussi au moins un article sur phpbuilder.com 
 
divers moteur de templates: 
http://modelixe.phpedit.com/ (ils ont le mérite d'expliquer correctement comment ça fct) 
http://www.thewebmasters.net/php/FastTemplate.phtml (pas très clair, mais c'est celui que j'utilise) 
 
si tu as des questions sur fasttemplates...
Marsh Posté le 04-07-2002 à 13:55:15
salut, 
 
 
dis, pour les variables dans les .tpl 
 
il faut mettre {VARIABLE} ou VARIABLE (avec FastTemplate) 
 
parce que je vois partout avec des {} dans les examples, mais chez moi, ca me réaffiche les {} à la sortie (dans mon fichier .html final) 
 
autre chose: apparemment, quand on emploie les templates, c'est aussi pour séparer l'HTML du code. mais j'arrive pas... 
 
 
par exemple, si j'ai  
 
main.tpl 
 
<html> 
<head> 
 
</head> 
<title>{TITLE}</title> 
<body> 
{MAIN} 
</body> 
 
 
et que je veux mettre un javascript dans le <head> 
comment je fais ? 
 
je dois faire une autre template exprès ? 
 
avec: 
 
<head> 
<script>{SCRIPT}</script> 
</head> 
 
puis je fais une sorte d'include (en fait je vois pas très bien comment faire)? 
 
merci 
 
je suis neuneu ! n'est-ce pas ?
Marsh Posté le 04-07-2002 à 13:57:08
juste par curiosite y a t il une traduction francaise de template?
Marsh Posté le 04-07-2002 à 14:02:01
pour un comparatif des differents moteurs de template (francais 
): http://www.phpindex.com/news/news_ [...] lement=866 
 
tu peut utiliser le systeme de phplib (celui ke j utilise, le + performant sans systeme de cache 
) (english): http://sourceforge.net/projects/phplib/ 
 
pour des explications bien utiles sur phplib (english too): http://www.phpbuilder.com/columns/david20000512.php3
Marsh Posté le 04-07-2002 à 14:02:03
| kayasax a écrit a écrit  : juste par curiosite y a t il une traduction francaise de template?  | 
 
 
gabarit 
 
Marsh Posté le 04-07-2002 à 14:03:21
 
  
| kadreg a écrit a écrit  : gabarit  | 
Marsh Posté le 04-07-2002 à 15:04:32
| art_dupond a écrit a écrit  : salut, dis, pour les variables dans les .tpl il faut mettre {VARIABLE} ou VARIABLE (avec FastTemplate) parce que je vois partout avec des {} dans les examples, mais chez moi, ca me réaffiche les {} à la sortie (dans mon fichier .html final)  | 
 
oui il faut les mettre. 
tu as modifié le fichier class.FastTemplate.php comme indiqué sur leur site ? 
--> str_replace('{'.$key.'}', ...); pcq il parait que certaines versions de php auraient du mal avec les accolades. 
 
| art_dupond a écrit a écrit  : autre chose: apparemment, quand on emploie les templates, c'est aussi pour séparer l'HTML du code. mais j'arrive pas...  | 
 
 
c'est même le principal avantage 
 
 
| art_dupond a écrit a écrit  : par exemple, si j'ai main.tpl <html> <head> </head> <title>{TITLE}</title> <body> {MAIN} </body> et que je veux mettre un javascript dans le <head> comment je fais ? je dois faire une autre template exprès ? avec: <head> <script>{SCRIPT}</script> </head> puis je fais une sorte d'include (en fait je vois pas très bien comment faire)?  | 
 
 
ça dépend, tu peux mettre ton javascript dans le template de base (attention la balise <title></title> va dans le <head></head> ).  Dans ce cas tu auras un template complet par page. 
<html> 
<head> 
<title>{TITLE}</title> 
<script> 
  function test(){ 
    alert('blabla'
; 
  } 
</script> 
</head> 
<body> 
{CONTENT} 
</body> 
</html> 
 
Maintenant tu travailles peut-être comme moi... c'est le bordel à expliquer 
 
j'utilise un template de base qui ne contient que la structure de la page ({HEADER} et un tableau avec {MENU}, {PAGECONTENT}). 
voir: http://www.ethernal.be/work/templates/JS/FR/index.html 
 
Pour chaque page, je prends ce templates et je le remplis avec le contenu d'autres templates. 
ex: 
pour afficher la liste des forums (index.php?mod=forum&disp=index) : 
- la page index.php contient l'ouverture du template principal (structure). 
- j'inclus la page de contenu à afficher avec un include() en fonction des arguments (forum/index.php) 
- Cette page contient le traitement du template de la liste des forums. 
- je récupère le résultat dans une variable ( $var= $objTpl2->fetch(); ) 
- j'assigne cette variable dans index.php qui parse le template principal ($objTpl1->assign(CONTENT, $var); 
 
tu as compris qqch ? (moi j'ai du mal 
) 
 
si tu veux regardes mes templates  
ex template du forum : 
http://www.ethernal.be/work/templa [...] index.html 
http://www.ethernal.be/work/templa [...] x_row.html 
http://www.ethernal.be/work/templa [...] _head.html 
http://www.ethernal.be/work/templa [...] forum.html 
http://www.ethernal.be/work/templa [...] m_row.html 
http://www.ethernal.be/work/templa [...] _head.html  
http://www.ethernal.be/work/templa [...] topic.html 
 
et ainsi de suite... 
Marsh Posté le 04-07-2002 à 18:02:35
| kadreg a écrit a écrit  : gabarit  | 
 
J'eûs dit patron, mais c'est bon aussi ![]()
Marsh Posté le 06-07-2002 à 16:26:15
merci ethernal... 
 
j'ai pas le temps de tout lire maintenant, je vais essayer de comprendre ce charabia 
 
 
 
 
 
ps : j'arrive pas à acceder à tes trucs
Marsh Posté le 06-07-2002 à 16:28:57
en tout cas, ca marche mieux avec la ligne que tu m'as donnée ![]()
Marsh Posté le 06-07-2002 à 16:33:31
mais ca marche toujours pas avec le fichier exemple qu'ils donnent avec define_dynamic 
 
 
edit: apparemment je vois sur le site qu'il faut aussi changer d'autres trucs... 
 
bon je vais voir  
 
 
edit : ca marche ![]()
Marsh Posté le 03-07-2002 à 00:52:48
Est se que quelqu'un me m'expliquer commen marche les templates, on me donenr une url (en français si possible) qui explique assez bien le sujet !
 
Merci