Page : 1 |
Radio |
Posté le 31/10/2007 15:48
- #
|
Membre
4 messages
|
Salut à tous et à toutes ,
Je viens de tomber sur un problème en voulant coder pour m'amuser avec votre moteur de templates. Alors voilà: je fais la page index.php et index.tpl puis je fais mes pages menu.tpl et menu.php. Les voici puis je vous explique.
Index.tpl
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns= "http://www.w3.org/1999/xhtml" xml:lang= "fr" >
<head>
<title>Site de script</title>
<meta http-equiv= "Content-Type" content= "text/html; charset=iso-8859-1" />
</head>
<body>
<p> {include file= "menu.tpl"}</p>
<h1>Bienvenue</h1>
</body>
</html>
Index.php ne contien rien pour le moment, elle servira pour les news
Menu.tpl
<a href="index.php">Accueil</a> -
<a href="news.php"> News</a> -
<a href="forum.php"> Forum</a> -
<a href="livreor.php"> Livre d'or</a> -
<a href="membre_list.php"> Membres</a> -
<a href="team.php"> Equipe</a> -
{if ($connecte=1) }
<a href="deconnection.php"> Se seconnecter</a> -
<a href="messages_perso.php"> Messages persos</a>
{else}
<a href="inscription.php"> S'inscrire</a> -
<a href="connection.php"> Se connecter</a>
{/if}
Et pour finir: menu.php
<?php
include('libs/gaga.class.php');
$tpl = new gagatemplate();
if(isset($_SESSION['pseudo']))
{
$connecte = 1;
}
else
{
$connecte = 0;
}
$tpl -> assign(array(
'connecte' => $connecte));
$tpl-> cache_time = 300;
$tpl -> cache = true;
$tpl -> parse('menu.tpl');
?>
Et devinez ce que j'obient quand j'ouvre ma page index.php: j'obtient ceci:
{include file="menu.tpl"}
Bienvenue
Alors que je voudrais voir apparaitre le menu
Merci d'avance.
Radio
|
gaga26 |
Posté le 31/10/2007 19:20
- #
|


741 messages
18 ans |
Salut,
Il n'y a pas besoin de parser menu.tpl, l'include le faire pour toi. Il faut déclarer tes variables de menu dans l'index (ou include la page menu.php).
|
Radio |
Posté le 31/10/2007 19:54
- #
|
Membre
4 messages
|
C'est-à dire que je dois faire cela sur toutes les pages?
|
gaga26 |
Posté le 31/10/2007 20:55
- #
|


741 messages
18 ans |
non, tu n'as qu'a inclure menu.php, mais tu te limite à ce code.
menu.php
if(isset($_SESSION['pseudo']))
{
$connecte = 1;
}
else
{
$connecte = 0;
}
$tpl -> assign(array(
'connecte' => $connecte));
Et dans index.php
include('libs/gaga.class.php');
$tpl = new gagatemplate();
//inclusion du menu
include('menu.php');
$tpl -> parse('index.tpl');
Avec les même fichiers templates.
|
Radio |
Posté le 31/10/2007 21:24
- #
|
Membre
4 messages
|
Salut,
Merci tout d'abord.
Maintenant, autre problème: ma condition en fonctionne pas, dans le menu j'ai la possibilité de me déconnecter alors que j'ai pas de variable de session ouverte .
Merci d'avance.
Radio
EDIT: je fais d'autre condition avec le moteur et jamais elle ne fonctionne . Edité par Radio le 31/10/2007 21:31
|
gaga26 |
Posté le 01/11/2007 14:10
- #
|


741 messages
18 ans |
Tu utilise un égal simple alors qu'il en faut un double, exactement comme PHP. Ne perd pas de vue que le fichier template sera convertit en PHP par la suite.
|
Radio |
Posté le 01/11/2007 19:07
- #
|
Membre
4 messages
|
OkOK. Merci, problème résolu.
Radio
|
Page : 1 |