Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2745 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Un peu perdu avec les templates

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Un peu perdu avec les templates

n°1418843
creusois
Posté le 03-08-2006 à 12:35:25  profilanswer
 

Bonjour à tous,
 
Voila, je me mets aux templates et je suis un peu perdu.
 
Je tente de faire un menu, ET aussi la liste des articles. Je m'esplique, j'ai une table SQL avec ces champs
id_article
id_rubrique
titre
article
 
Je voudrais donc faire un menu avec les titres (donc une boucle), et aussi à coté dans le corps de la page je voudrais afficher les titres et les articles (encore uen boucle). Apres je definirai des ancres pour aller directement depuis le menu vers la position de l'article desiré.
 
Mais voila, j'ai un peu de mal à mettre deux systemes de template dans la meme page PHP. Si qu'lqu'un avait une idée, merci
 
Extrait de mon gabarit
 

Code :
  1. <div id="menu">
  2. <div>Menu<br /></div>
  3. <!-- BEGIN liste_menu -->
  4. <div>{titre}</div>
  5. <!-- END liste_menu -->
  6. </div>
  7. <div id="corps">
  8. <!-- BEGIN liste_article -->
  9. {titre}<br /><br />
  10. {article}<br />
  11. <!-- END liste_article -->
  12. </div>


 
Et voici pour le moment ma page PHP qui ne gere que les titres dans le menu. Je voudrais donc pouvoir remplir le div des articles.
 
 

Code :
  1. <?php
  2. // On inclue le fichier template.inc
  3. include "./lib/phplib/php/template.inc";
  4. //On se connecte à la base de donnée
  5. include('./config/config.php');
  6. connexion();
  7. // On fait la requete SQL
  8. $sql = 'SELECT id_article, titre FROM '.PREFIXE.'articles WHERE id_rubrique = 1 ORDER BY classement';
  9. $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
  10. //Pour utiliser la commande "new template" il faut indiquer le chemin vers les gabarits (ici = ../gabarits ).
  11. //- template (string $path)
  12. $tpl = new template("./gabarits" );
  13. //Pour utiliser la commande "new template" il faut indiquer le chemin vers les gabarits (ici = ../gabarits ).
  14. //- template (string $path)
  15. $tpl->set_file("menu","presentation.html" );
  16. //Avec la commande "set_block" nous allons créer un bloc qui va correspondre au nom du traitement créé précédemment dans la page HTML. Son utilisation se fait sous cette forme : nom du gabarit, nom du traitement (dans HTML), nom du bloc.
  17. //- set_block (string $name_gabarit, string $name_HTML,string $name_bloc)
  18. $tpl->set_block('menu','liste_menu','liste_blocmenu');
  19. //On fait une boucle qui va faire un tour pour chaque enregistrement
  20. while($data = mysql_fetch_array($req)) {
  21. //Grâce à "set_var" nous allons définir les champs notés dans le code HTML.
  22. //Cette commande s'exécute sous cette forme : nom du champ (dans HTML), valeur (ici récupéré dans la base. Pour chaque différent champ nous exécutons la commande "set_var".
  23. //set_var(string $name_HTML, string $value)
  24. $tpl->set_var("titre", stripslashes($data['titre']));
  25. //Ensuite nous utilisons la commande "parse" qui va nous servir à parcourir la boucle et à remplacer les champs par les valeurs de la db. Sa syntaxe est la suivante : nom du bloc, nom du traitement (dans HTML), true.
  26. //parse(string $name_bloc, string $name_HTML, true)
  27. $tpl->parse('liste_blocmenu','liste_menu',true);
  28. }
  29. // on ferme la connexion à MySql.
  30. mysql_close();
  31. //On finit par l'affichage, avec la commande pparse, qui s'écrit sous la forme :
  32. //Nom de l'affichage, nom du gabarit.
  33. //pparse(string $name, string $name_gabarit);
  34. $tpl->pparse("affichage","menu" );
  35. ?>


 
 
Merci beaucoup pour l'aide que vous pourrez m'apporter.
 
Alexandre

mood
Publicité
Posté le 03-08-2006 à 12:35:25  profilanswer
 

n°1418862
mIRROR
Chevreuillobolchévik
Posté le 03-08-2006 à 13:16:17  profilanswer
 

lé pourri smoteur de template :P
 
mais a vue de nez je pense qu il faudrait faire un second set_block ^^

n°1419622
vomegaz
~Libriste & Gulden Draak fan~
Posté le 04-08-2006 à 12:52:02  profilanswer
 

mIRROR a écrit :

lé pourri smoteur de template :P
 
mais a vue de nez je pense qu il faudrait faire un second set_block ^^


 
je suis d'accord va faire un tour du coté de smarty


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Un peu perdu avec les templates

 

Sujets relatifs
Je suis perdu pour utiliser un flux XMLA l'aide, mot de pass mysql perdu !
perdu pr mon sujet de stage[JSP/Struts/templates] éclairez moi
< > ' " , ; en PHP suis PERDU ----> AU SECOURS !Question sur les templates
Specialisation partielle de fonction membre de classes templates...Probleme avec les templates
[C++] Probleme avec la stl et les classes templates[C++] qsort() sur des templates
Plus de sujets relatifs à : Un peu perdu avec les templates


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR