[HTML PHP] Include,templates........gener icite du code

Include,templates........gener icite du code [HTML PHP] - PHP - Programmation

Marsh Posté le 08-08-2002 à 10:47:15    

Salut a tous,
 
Pourriez vous m expliquer deux ou trois trucs please.
Pour faire un site le plus generique possible je presume qu il existe trois methodes :
 

  • Pages HTML standard (pas de php, pas de page incluse rien de rien :'( )


  • Pages HTML mais avec un peu plus de genericite donc par exemple une page html header et un pied de page par exemple incluse dans les autres.

Donc la deja vous faites comment pour inclure des pages dans d autres de facon normale car a part avec frontpage (et ses put1 d extensions) ou avec le object mais ki laisse un cadre sous IE je ne vois pas....
J aimerais si possible que qqun me dise comment on fait si c du html standard , et egalement comment on fait en  php (un simple include ? on peut includer n importe quel type de fichier ? donc la includer une page html ki aurait juste le code de debut avec les balises "ouvrantes" de html header et body ou une page html entiere ?)
 

  • ben la meme chose mais avec les templates.

Parlons un peu des templates....je vois bien la chose en C++ mais ce qui n a rien avoir ici alors je suis un peu paume a ce sujet.
Bon je comprend bien que ca permet qq soit les resultats venant de php d avoir le meme design html ki se formerait sous forme de puzzle (genre les forums avec un header template, un body template mais ki depend par exemple de la recup de la liste des forums ou des topics, et puis un pied de page template).
G analyse un peu le code du forum phpbb par exemple et je vois qu ils utilisent une methode avec des templates mais leurs templates est bases sur une classe et des fonctions qu ils ont cree (avec compilation de code :??: , chargement etc... donc je ne pige pas vraiment).
Existe t il des fonctions specifiques pour faire les templates ?
Comment ca marche cette bete la car franchement je suis curieux de savoir comment ca marche car la je viens de faire une grosse remise en kestion de mes scripts pour les faire plus generique (car etant debutant je les ai fait la 1ere fois on peut le dire de facon vraiment a l arrache) et j aimerais pouvoir me lancer dans de la genericite php-html. :hap:  
 
Alors si vous pouviez m eclaircir ces qq points ca serait sympa.
Car autant prendre de bonne habitude, faire du code propre et generique. :D
Je sais j en demande bcp mais SVP help me a little ;)
 
:jap:
Thx a toux ceux ki repondront (sauf pour dire une connerie  :lol: )


Message édité par mkracing66 le 08-08-2002 à 10:56:13

---------------
L'ennemi est bête : il croit que c'est nous l'ennemi alors que c'est lui ! [Pierre Desproges]
Reply

Marsh Posté le 08-08-2002 à 10:47:15   

Reply

Marsh Posté le 08-08-2002 à 11:40:10    

(2) en html normal, sais pas... pq pas en js...
    en php : oui avec de simples includes de codes php qui génère du code html
ex:

Code :
  1. //index.php :
  2. echo "mon header";  //ou un autre include
  3. switch ($page){
  4. case "news": include("news.php" );
  5. case "forum": include("forum.php" );
  6. default : include("accueil.php" );
  7. }
  8. echo "mon bas de page"; //ou un autre include


 
(3) avec des templates :
il existe des classes toute faites qui les gères :
fastTemplates, ModeliXe, Vtemplate...
Sur le site de Modelixe ( http://modelixe.phpedit.com/ ), ils fournissent une liste des classes existantes.
pour les explications rien de tel qu'un bon tutorial :  
http://www.devshed.com/Server_Side [...] page1.html
http://www.devshed.com/Server_Side [...] page1.html
http://www.devshed.com/Server_Side [...] page1.html
http://www.phpbuilder.com/columns/kendall20001122.php3
http://www.phpbuilder.com/columns/david20000512.php3
http://www.phpbuilder.com/columns/zhang19990610.php3
http://www.phpbuilder.com/columns/sascha19990316.php3
http://www.phpbuilder.com/columns/richard20010108.php3
http://www.phpbuilder.com/columns/lep20020402.php3


Message édité par ethernal le 08-08-2002 à 11:40:46

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

Marsh Posté le 08-08-2002 à 11:43:01    

ps : si tu veux faire vraiment générique, tu es parti pour qq années de dev ;) :D :lol:


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

Marsh Posté le 08-08-2002 à 11:57:24    

Je sais mais il est tjs bon de vouloir apprendre, de tester, de se planter aussi  :lol:  mais finalement d y arriver  :kaola: non  :D ?
 
En tout cas merci pour ces explications....
 
Heu avec les includes on fait des insertions de pages entieres cad de <html a </html> c bien ca alors qu avec les templates on peut se retrouver avec des header qui ont <html> mais a la construction oblige de mettre le pied de page pour fermer la balise </html> c bien ca ?
Je ne sais pas si je me fais bien comprendre dsl pas evident d exposer ce que l on souhaite...
 
En tout cas je tiens a passer un mess perso : un grand merci a tous ceux ki m aident sans me jeter pour les conneries que je raconte : ethernal,sh@rdar,antp,kayasax,gm_superstar,max evans etc... arf la liste serait trop longue dsl pour ceux que j oublie  ;)  
 
@+


---------------
L'ennemi est bête : il croit que c'est nous l'ennemi alors que c'est lui ! [Pierre Desproges]
Reply

Marsh Posté le 08-08-2002 à 12:39:36    

la soif d'apprendre n'apporte que du bon ;)
 
avec les includes comme avec les templates ont peut se retrouver avec des pages complètes (<html></html> ).
un exemple d'include un peut plus complet :
 
index.php :  

Code :
  1. switch ($page){
  2.   case "news": break;
  3.   case "forum": break;
  4.   default : $page="accueil";
  5. }
  6. include ("header.php" );
  7. include ($display."php" );
  8. include ("footer.php" );


 
header.php:

Code :
  1. <?
  2. switch($page){
  3.   case "news": $title="Mes News"; break;
  4.   case "forum": $title="Mes Forums"; break;
  5. }
  6. ?>
  7. <html>
  8. <head>
  9. <title><? $title ?></title>
  10. </head>
  11. <img src="mabannière.gif" alt="" border="0">


 
footer.php:

Code :
  1. </html>


 
avec les templates c'est le même principe, tu peux charger un template "header", "contenu", et "footer".


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

Marsh Posté le 08-08-2002 à 12:55:57    

Merci bien pour ces precisions....
 
Mais v encore peter les c*****s a tout le monde dsl car g de nouvelles kestions ki arrivent au fur et a mesure.
 
De faire des includes, des templates etc.. niveau perf ca a bcp d incidence ?
 
Par exemple est ce vraiment debile de faire des includes de 3 lignes de codes si elles se repetent dans un tas de scripts ?
 
Et maintenant je ne vois plus tres bien la difference entre faire un include de page html (en ayant bien separe le php et l html) et les templates...
Ca sert a koi exactement, son interet etc...
 
re thx ;)


---------------
L'ennemi est bête : il croit que c'est nous l'ennemi alors que c'est lui ! [Pierre Desproges]
Reply

Marsh Posté le 08-08-2002 à 13:08:32    

performance :
- includes : prends très peu de temps, tu ne verras presque pas de différence (minime)
- templates : il faut voir... pour chaque template chargé tu ouvres un fichier, tu le lis, et le fermes.  Puis tu parses tout le contenu à la recherche de tag à remplacer (assez rapide en fonction de la longueur du document puisque ça fct avec un str_replace).  Eventuellement tu utilises les capacités de templates dynamiques offert par la classe de template (ça ça prend du temps puisque ça fct en général avec un preg_replace)
 
Donc oui, ça prends du temps cpu de travailler avec des templates.  Mais tout est relatif, regarde sur mon site (partie forum)... tu trouves que ça rames tant que ça ?
 
Avantage des templates : il n'y a QUE de l'html dedans, ce qui permet de le soumettre à un graphiste.
Certaines classe de templates (modeliXe entre autre) permettent un code qui lui est propre dans le template  
(genre <boucle : nom_boucle>mon texte à boucler</boucle : nom_boucle> ) perso, je n'aime pas puisque remplacer du code php par un autre code, ça vaut vraiment pas la peine...


Message édité par ethernal le 08-08-2002 à 13:09:31

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

Marsh Posté le 08-08-2002 à 14:16:04    

Le meilleur moyen pour faire ce que tu veux c'est encore d'utiliser le xml-xsl !!!

Reply

Marsh Posté le 08-08-2002 à 14:20:53    

avec du php ???  :heink:  
je ne pense pas.... car que j utilise du xml-xsl ou de l html ca revient a la meme chose dans mon cas pour gerer avec le php.


---------------
L'ennemi est bête : il croit que c'est nous l'ennemi alors que c'est lui ! [Pierre Desproges]
Reply

Marsh Posté le 08-08-2002 à 14:21:35    

Non ? ou je dis nue connerie  :bounce:


---------------
L'ennemi est bête : il croit que c'est nous l'ennemi alors que c'est lui ! [Pierre Desproges]
Reply

Sujets relatifs:

Leave a Replay

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