UP PREVIOUS NEXT   Technologies Internet et Education, © TECFA
  3. Comment ca marche?

3. Comment ca marche?

Il est important de comprendre la logique de base du fonctionnement interne des modules et de phpWebSite.

3.1 La structure d'un module

mod/
    friends/
            index.php
            friends.php
            friends_config.php
            friends_block.php
            friends_functions.php
            friends_install.php
            friends_uninstall.php
            friends.gif

3.2 index.php

Le fichier index.php d'un module est son moteur. C'est ici que les actions concernant le modules sont faites.

if ($admintest==$security_hash)
// On est dans le traitement des fonctions administrateur
switch($op)
{
	case "install" :
          include("./mod/friends/friends_install.php");
          break;
	case "uninstall"" :
          include("./mod/friends/friends_uninstall.php");
          break;
    ...
}
// on est dans le traitement des actions de l'utilisateur
switch($op){
	case "fonction_utilisateur":
          action_utilisateur();
	...
	default: afficher_page_acceuil_module()
}

3.3 installation/désinstallation

Les fonctions friends_install.php et friends_uninstall.php contiennent le code pour créer les bases de données, les peupler (ou les effacer) et ajouter un lien dans les tables de phpWebSite module et menu pour être atteignable.

Penser à préfixer les tables avec le préfixe de phpWebSite suivit de mod_<le nom de votre module>

3.4 les autres fichiers du modules

Les autres fichiers:

3.5 mod.php

A la racine de votre installation de phpWebSite se trouve le fichier mod.php .

il centralise toutes les commandes et éxecute le code du module en cours d'utilisation et si aucun c'est utilisé il redirige sur la page d'acceuil.

<?php
foreach ($HTTP_GET_VARS as $key=>$value){
  if (preg_match("/^\<script/", $value)){
    $HTTP_GET_VARS[$key] = NULL;
        $$key = NULL;
  }
}
 
global $current_mod, $current_op;
if($mod)
{
        $current_mod = $mod;
        $current_op = $op;
        include("./mod/$mod/index.php");
}
else Header("Location: ./index.php");
?>

UP PREVIOUS NEXT -- TIE