GAGA Template

XLetter

Modèle HTML(tpl)

Imbrication de tpl dans le flot de lecture

Vous devez être inscrit et connecté pour pouvoir écrire dans les forums

Page : 1
chichto Posté le 28/01/2008 19:29 - #

Membre
2 messages
25 ans
Bonjour, j'aurais une question de nioubi.

Voilà J'ai un fichier PHP contenant mon code. Mais voilà, j'ai deux fichiers .tpl qui doivent être simultanément utilisés dans mon code. Est-ce possible pour le moteur de template de d'abord commencer à lire un fichier tpl puis en cours de lecture commencer la lecture du deuxième puis arrêter celle-ci et finir la lecture du premier ? Je sais pas si vous suivez la démarche ?

En fait ma structure se compose de (dans l'ordre):

Un fichier template qui n'est autre que le design du site;
Un fichier template de formulaire;
Un fichier php.


Merci d'avance pour votre aide

gaga26 Posté le 28/01/2008 19:37 - #



741 messages
18 ans
Salut,

Il suffit d'utiliser la balise include ou de scinder ton premier fichier en deux est d'utiliser trois fois la fonction parse.

chichto Posté le 17/02/2008 18:25 - #

Membre
2 messages
25 ans
J'aimerais bien mais ce qui me donne pour l'instant c'est pas grand chose. J'ai pas encore tout compris au système de templates...


J'ai un fichier home.php qui n'est pas à la racine

include('../libs/gaga.class.php'); // Template engine
include("language/$language"); // Language module
// Default pagelinks
$pagelink = "html/default.html";
if (!empty($_REQUEST['page'])){
$page = addslashes($_REQUEST['page']);
// Dynamic pagelinks activation
switch ($page){
// Public
case "register" : $pagelink = "register.php"; $linkmenu ="menu_public.php"break;
case "members" : $pagelink = "members.php"; $linkmenu ="menu_public.php"break;
case "features" : $pagelink = "features.php"; $linkmenu ="menu_public.php"break;
case "faq" : $pagelink = "faq.php"; $linkmenu ="menu_public.php"break;
case "contact" : $pagelink = "contact.php"; $linkmenu ="menu_public.php"break;
case "whois" : $pagelink = "whois.php"; $linkmenu ="menu_public.php"break;
case "stats" : $pagelink = "stats.php"; $linkmenu ="menu_public.php"break;
case "latest" : $pagelink = "latest.php"; $linkmenu ="menu_public.php"break;
case "topsites" : $pagelink = "topsites.php"; $linkmenu ="menu_public.php"break;
case "tell" : $pagelink = "tell.php"; $linkmenu ="menu_public.php"break;
case "dir" : $pagelink = "dir.php"; $linkmenu ="menu_public.php"break;
case "password" : $pagelink = "password.php"; $linkmenu ="menu_public.php"break;

// User Access
if ($pagelink == "members" && (!empty($_REQUEST['do']){
$linkmenu ="menu_members.php";
}
}// end if
}// end switch

//Déclaration de l'instance $tpl avec le chemin vers la racine du site
//si vous etes dans un sous-dossier, il faudra mettre '../', dans deux sous-dossier, '../../', etc
//il est aussi possible d'indiquer le chemin absolu comme par ex : /opt/lampp/htdocs/monsite/ ou encore c:/xampp/htdocs/monsite/
$tpl = new gagatemplate('../');

//on déclare les variables
$tpl->assign(array(
        'pagelink' => $pagelink,
        'linkmenu' => $linkmenu,
        'title' => $title,
        'startpage' => $startpage
));

//pour finir on compile et on afficher le fichier template
$tpl->parse('templates/$theme/home.tpl');
 


Ensuite j'ai mon fichier home.tpl :


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>{titre_page}</title>
</head>

<body>
<table width="1119" border="1">
  <tr>
    <td colspan="2">TEST </td>
  </tr>
  <tr>
    <td width="183"><include file="{linkmenu}" /></td>
    <td width="920"><include file="/{pagelink}" /></td>
  </tr>
  <tr>
    <td colspan="2">Copyright moi-même</td>
  </tr>
</table>
</body>
</html>
 


Comme vous le voyez, là dedans je fais appelle à d'autres page à coup d'include dynamiques qui sont normalement déjà parsé.

gaga26 Posté le 17/02/2008 18:54 - #



741 messages
18 ans
Pour les include dynamique il faut donner uniquement la variable précédé d'un $.

<include file="$ma_variable" />

Page : 1

Vous devez être inscrit et connecté pour pouvoir écrire dans les forums

Retour au forum Méthodes, à la liste des forums, ou au haut de page