Next Previous Contents

1. La generation des classes a partir de la base de donnée.

1.1 Introduction

Realiser une page web dynamique relié a une base de donnée peut etre un travail fastidieux. On doit:

En tant donnée que ceci est fortement lié a la définition de la table et que celle ci peut etre modifié au cours du temps , ce travail est constant et pour le moins sans interet.

Cependant , si l'on regarde ce probleme d'une maniere oriente objet , on peut facilement imaginer un objet gerant l'ensemble des trois taches ci dessus. C'est de la que viens l'idee de generer un objet ( en php ) a partir de la base de donnée, collant extratement a cette derniere.

Definition d'une l'API

Mis a part cette facilite qu'offre la generation , il y a un point tres interressant que nous offre cette generation. Effectivement elle nous offre une API standart pour toutes les bases. Ceci permet de degager le cote applicatif du cote des données proprement dit. Les scriptes php ( le cote applicatif ) traiterons des objets ( cote des donnees ). L'important est que le dialogue entre le cote applicatif et le cote des donnees restent constant.

1.2 Les objets generés.

Chaqu'une des tables via un script ( Tcl bientot php ) permet la création d'un fichier php3 ( dans le repertoire class/ ). L'ensemble des objets de ces fichiers heritent de la classe bd.

Le nom de la classe est le nom de table auquelle il correspond. Cet objet poccede en tant que variable l'ensemble des champs de la table.

Les actions precitées.

Nous allons décrire ici les étapes pour afficher un formulaire , gerer la creation de l'enregistrement dans la table.

API des objets generes.


init()
Initialise l'ensemble des variables a leur valeurs par défaut
( avec la generation tcl l'ensemble des variables sont mise a "";
getfrombd($idx) Remplit les variables de l'objet a partir
des valeurs de la base de donnée correspondant a l'index primaire idx
flood($resultsql) Remplit les variables de l'objet a partir de la table
de hashage $resultsql.
set($notset="") Affecte les variables de l'objet a partir des
variables globales ( nom de la table) ( nom du champs ).
setadmin()
jscontrol()
valider()
showform($notshow="") Affiche le formulaire correpondant a la table
( methode devant etre surchargé ).
showformadmin($notshow="") Affiche le formulaire pour de l'administration.
showraw() Affiche les données de l'objet
de maniere brute ( doit etre surchargée ).
showrecuresif() Non utilisé.
getXXX() Permet d'obtenir la valeur de la variable XXX
del($idx) Detruit l'enregistrement de la table
correpondant a la cle primaire $idx.
addtobd() Ajoute a la base de donnée les valeurs de l'objet.
modifbd() Mofifie la base de donnée.
iter($pfunc,$query) Iterateur sur la base de donnée,
pfunc est un nom de fonction et query est une requete.
iterrecurcif($query) Non utilisé.
last($where="") ...


Next Previous Contents