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.
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.
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.
Nous allons décrire ici les étapes pour afficher un formulaire , gerer la creation de l'enregistrement dans la table.
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="") | ... |
|