FAQ bibliothèques et extensions PHP
FAQ bibliothèques et extensions PHPConsultez toutes les FAQ
Nombre d'auteurs : 7, nombre de questions : 71, dernière mise à jour : 16 juin 2021
- Qu'est-ce que VTemplate ?
- Comment installer VTemplate ?
- Comment instancier VTemplate ?
- Quelle est la syntaxe d'un gabarit VTemplate ?
- Comment envoyer une variable au template avec VTemplate ?
- Comment répéter un bloc du gabarit avec VTemplate ?
- Comment placer un bloc dans un autre (imbrication) avec VTemplate ?
VTemplate est système de templates écrit en PHP et c'est projet français.
Le principe est le même que pour phplib, à savoir utiliser des commentaires HTML dans le gabarit afin de construire un moule de document.
Télécharger l'archive, décompresser et éventuellement appliquer quelques corrections.
Un gabarit VTemplate s'écrit en HTML :
La méthode setVar() remplit cet office :
$template
->
setVar($handle
,
'
charset
'
,
$charset
);
<
meta http-
equiv=
"
Content-Type
"
content=
"
text/html; charset={#charset}
"
/>
$sql
=
'
SELECT id, title
FROM subject
'
;
$subjects
=
mysql_query($sql
) or die(mysql_error());
while($subject
=
mysql_fetch_assoc($subjects
))
{
$template
->
newSession($handle
,
'
subject
'
);
$template
->
setVar($handle
,
'
subject.title
'
,
$subject
[
'
title
'
]
);
}
$sql
=
'
SELECT id, title
FROM subject
'
;
$subjects
=
mysql_query($sql
) or die(mysql_error());
while($subject
=
mysql_fetch_assoc($subjects
))
{
$template
->
newSession($handle_home
,
'
subject
'
);
$template
->
setVar($handle_home
,
'
subject.title
'
,
$subject
[
'
title
'
]
);
$sql
=
'
SELECT id, title
FROM category
WHERE subject_id =
'
.
$subject
[
'
id
'
];
$categories
=
mysql_query($sql
) or die(mysql_error());
while($category
=
mysql_fetch_assoc($categories
))
{
$template
->
newSession($handle_home
,
'
category
'
);
$template
->
setVar($handle_home
,
'
category.title
'
,
$category
[
'
title
'
]
);
$sql
=
'
SELECT id, uri, title, description
FROM tutorial
WHERE category_id =
'
.
$category
[
'
id
'
];
$tutorials
=
mysql_query($sql
) or die(mysql_error());
while($tutorial
=
mysql_fetch_assoc($tutorials
))
{
$template
->
newSession($handle_home
,
'
tutorial
'
);
$template
->
setVar($handle_home
,
'
tutorial.uri
'
,
$tutorial
[
'
uri
'
]
);
$template
->
setVar($handle_home
,
'
tutorial.title
'
,
$tutorial
[
'
title
'
]
);
$template
->
setVar($handle_home
,
'
tutorial.description
'
,
$tutorial
[
'
description
'
]
);
}
}
}
<!--VTP_subject-->
<div class
=
"bloc_cours"
>
<div class
=
"titre_cours"
>
{#title}</div>
<!--VTP_category-->
<div class
=
"categorie_cours"
>
{#title}</div>
<div class
=
"liste_cours"
>
<ul>
<!--VTP_tutorial-->
<li>
<a href
=
"{#uri}"
>
{#title}</a>
: {#description}
</li>
<!--/VTP_tutorial-->
</ul>
</div>
<hr />
<!--/VTP_category-->
</div>
<br />
<br />
<!--/VTP_subject-->