Personal tools
You are here: Home Documentation Gestion des formulaires Principes relatifs au formulaire
Document Actions

Principes relatifs au formulaire

last modified 2005-11-13 21:58

Utilisation par défaut de la base de données et script génerique d'interface

Le formulaire gère l’interface entre la base de données et l’utilisateur.

Les formulaires sont de deux types :

    affichage des données en tableau: classe tab.class.php

    mise à jour des données: classe dbform.class.php

Ces classes utilisent les mêmes principes:

1 UTILISATION DES INFORMATIONS DE LA BASE DE DONNEES

Le framework utilise par défaut toutes les informations de la base de données : nom de champ, taille, type … récupérées par la requête SQL.

Le formulaire est limité dans sa présentation à une succession de champ qui peuvent être ou non regroupés sur une même ligne.

Chaque requête est gérée de manière indépendante pour chaque base (sauf les requêtes de mise à jour qui sont compatibles avec db pear).

Les requêtes de chaque base de données sont gérées dans des fichiers à inclure (répertoire sql/typedebase/….inc) pour régler les différences de langage au niveau des FONCTIONS de sql

Exemple : substr (oracle), substring (postgre, mysql)

             Concat (mysql), || pour oracle et postgre

             Jointure (cartésienne ou join)

Il n’a pas été choisi de développer des méthodes complémentaires à DBPEAR qui n’aurait pas permis de prendre en compte la diversité de langage SQL suivant les bases de données.

2 SCRIPT GENERIQUE D INTERFACE

Les objets métiers simples utilisent les méthodes :

(tab.class.php, db_form.class.php) associées à un interface générique (tab.php, form.php)

L’objet métier est alors passé en paramètre (le paramétrage se fait dans un fichier avec un nombre de paramètres limité, ce qui limite la complexité) :

Exemple 1 : tab.php ?obj=exemple = affiche la table exemple suivant les paramètres définies en sql/mysql/exemple.inc ou sql/pgsql/exemple.inc

Exemple 2 : form.php ?obj=exemple = affiche le formulaire bureau suivant les paramètres définies en sql/mysql/exemple.form.inc ou  sql/pgsql/exemple.form.inc en utilisant l’objet métier /obj/bureau.class.php où sont définis les méthodes spécifiques de l’objet

Les objets métiers complexes héritent des classes génériques, peuvent avoir leurs propres méthodes et utilisent leurs propres interface

exemple openelec: voir http://www.openelec.org pour les inscriptions

inscription.form.php ou inscriptioncg.form.php -> mouvement.class.php -> dbform.class.php-> db.php