[PHP] templates...

templates... [PHP] - PHP - Programmation

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 :hello:

Reply

Marsh Posté le 03-07-2002 à 00:52:48   

Reply

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...


Message édité par ethernal le 03-07-2002 à 10:05:24

---------------
...oups kernel error...
Reply

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 ?

Reply

Marsh Posté le 04-07-2002 à 13:57:08    

juste par curiosite y a t il une traduction francaise de template?


---------------
All we need is a soul revolution
Reply

Marsh Posté le 04-07-2002 à 14:02:01    

pour un comparatif des differents moteurs de template (francais :o): 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

Reply

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
 


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
Reply

Marsh Posté le 04-07-2002 à 14:03:21    

:jap:  

kadreg a écrit a écrit :

 
 
gabarit
 
 




---------------
All we need is a soul revolution
Reply

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 :D)
 
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...


---------------
...oups kernel error...
Reply

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 :D

Reply

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 :D
 
 
 
 
ps : j'arrive pas à acceder à tes trucs

Reply

Marsh Posté le 06-07-2002 à 16:26:15   

Reply

Marsh Posté le 06-07-2002 à 16:28:57    

en tout cas, ca marche mieux avec la ligne que tu m'as donnée :)

Reply

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  :na:
 
edit : ca marche :)


Message édité par art_dupond le 06-07-2002 à 16:38:29
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed