Zen Cart France arrow News & tutoriels arrow Tutoriels arrow Structure des scripts 1 - principe de base 22-11-2017
Structure des scripts 1 - principe de base Version imprimable Suggérer par mail
Écrit par Zen Cart France   

Structure des scripts 1 - principe de base

Le système ZC, inspiré d’osC, utilise le langage de scripting php. Entre un browser et un serveur HTTP, le principe du scripting est qu’à chaque requête HTTP émise par le browser, un ou plusieurs script sont exécutés sur le serveur. Une technique fort répandue consiste à ne pas écrire un gros script pour chaque fonction souhaitée, mais un ensemble de script qui sont exécuté l’un à la suite de l’autre. Ceci est réalisé au moyen de la commande


include("fichierscript.php");

 

ou


require("fichierscript.php");

 

Lorsque le script d’origine rencontre cette commande, il inclut le code contenu dans le fichier spécifié.

Toute la partie boutique du système ZC (partie visible pour le chaland qui fait ses achats) repose sur ce principe. Les scripts reposent entièrement sur le principe suivant : en paramétrant judicieusement quelques variables, le browser n’a plus qu’à faire ses requêtes uniquement sur le script index.php. On spécifie le nom de la page que l’on désire (index.php?main_page=). Derrière, les scripts « se débrouillent » pour inclure les bouts de scripts nécessaires pour réaliser la fonction demandée. On peut presque parler que le script index.php est le moteur du système : c’est à partir de ce script seul que tous les autres bouts de script sont exécutés en fonction des paramètres configurés, reçus ou calculés.

Ceci nécessite évidemment une organisation rigoureuse des « bouts de script à inclure » dans des répertoires bien définis sur le serveur. En effet, il s’agit de placer dans des répertoires communs, les bouts de scripts qui effectuent le même type de fonctionnalités (accès base de données, template, javascript, ...).

Afin d’alléger le système d’appel en cascade de bouts de scripts, le système considère que toutes les bouts de scripts nécessaires à réaliser une fonction bien précise (afficher une faq par exemple) doivent porter le même nom (faq.php par exemple). On trouvera ainsi un faq.php dans les templates, un faq.php dans la partie qui gère les accès de bases de données, un faq.php pour la langue, etc ... Le moteur « n’a plus qu’à » aller pêcher les bouts de scripts qui portent le même nom dans les différents répertoires de l’arborescence.

On voit directement se profiler des avantages : si un bout de script n’existe pas à un endroit (file not found), il suffit d’aller chercher celui qui est définit dans le répertoire par défaut.

Pour créer une nouvelle fonction (page de liens par exemple), « y’aka » écrire une série de bouts de scripts et de les placer dans les bons répertoires. Puis, magie !, cela fonctionne. MAIS, cela peut déraper très vite également si on ne maîtrise pas cette structure ....


En résumé :

La partie boutique du système ZC est basée sur un script « moteur » index.php qui est exécuté à chaque requête d’un browser. Les autres scripts sont exécutés en fonctions de paramètres :

  • fournis lors de l’appel (GET ou POST),
  • sauvegradé dans la session,
  • spécifiés dans le fichier configure.php
  • récupérés dans une table (zen_configure)
  • calculé en vol lors de l’exécution du script

La partie admin sera réécrite dans une version future par zen-cart.com pour répondre à ce principe. Actuellement, la partie admin relève d’une structure et programmation moins rigoureuse hérité directement d’osC).

atarax

Dernière mise à jour : ( 01-10-2008 )
 
< Précédent   Suivant >
[ Retour ]