Utilisation du module d'authentification
Présentation de l'outil
Ce module s'appuie sur une source de données ODBC (donc indépendant de la base de données
mais contraint à un environnement Windows) auprès de laquelle il va récupérer l'ensemble des tables.
Il permet alors de générer automatiquement des formulaires HTML et les pages PHP de récupération
(en $_POST) des données en s'appuyant sur la structure des tables.
Déroulement
1. La page initiale ([Link]) présente deux champs : le premier permet de saisir le nom
d'une source de données valide, le second le chemin vers lequel seront stockées les pages générées.
Un contrôle de saisie en Javascript oblige à renseigner les deux champs.
2. La page [Link] propose l'ensemble des tables
contenues dans la base référencée par la source ODBC
3. l'appui sur le bouton Afficher permet :
l'affichage de la structure de la table
la génération du formulaire HTML
la génération du fichier PHP de récupération des
données du formulaire
Structure de la
table choisie
Résumé des
éléments
générés
Contexte GSB – BTS SIO – V1.2 – Utilisation du module d'authentification Page 1/3
Documentation de la classe
classe cGesTables
Objectif Générer automatiquement le formulaire HTML et la récupération PHP en se basant sur
la structure d'une table
Pré-requis Existence d'une source ODBC vers une base de données
Propriétés
$connexion Objet de connexion à la base de données
$dsn Nom de la source de données ODBC
Méthodes Connexion à la base, gestion du dossier destination des fichiers générés
function connecte($pNomDSN, $pUtil, $pPasse)
//tente d'établir une connexion à une base de données
$pNomDSN : nom d'une source ODBC valide vers une base de données
$pUtil : nom d'un compte autorisé à établir une connexion à la base de
données (peut ne pas être celui correspondant à l'identification à vérifier
$pPasse : mot de passe associé au compte pour se connecter à la base
function dossier($pDossier)
//crée le dossier de stockage des fichiers s'il n'existe pas et se positionne dessus
$pDossier : chemin du dossier
Affichage des noms des tables dans une liste
function afficheTables( $pFichAction)
//Affiche un formulaire HTML contenant dans une liste SELECT l'ensemble des
noms des tables de la base de données
$pFichAction : nom du fichier utilisé pour l'option action de la balise form
Eléments de base d'une page HTML
function ecritEntete($pFichier, $pTitre)
//écrit dans un fichier les entêtes HTML (<html>,<head>,<title>,<body>...)
$pFichier : objet fichier dans lequel on écrit
$pTitre : titre de la page HTML affichée dans la barre de titre du navigateur
function ecritPied($pFichier)
//écrit dans un fichier les balises fermantes d'un fichier HTML (</body>,</html>)
$pFichier : objet fichier dans lequel on écrit
Contenu du formulaire HTML correspondant à une table
function ecritFormulaire( $pTable, $pNomForm, $pFichAction, $pMethode,
$pFichier)
// écrit le code HTML produisant un formulaire pour les champs d'une table
$pTable : nom de la table
$pNomForm : valeur à donner à l'option name de la balise form
$ pFichAction : nom du fichier utilisé pour l'option action de la balise form
$pMethode : valeur à donner à la propriété method ("GET" ou "POST") du
formulaire
$pFichier : objet fichier dans lequel on écrit le code généré
function traiteUnChampForm($pNomChamp, $pTypeChamp, $pLongueur,
$pFichier)
//écrit le code HTML permettant la saisie pour un champ en fonction de son type
$pNomChamp : Nom du champ tel qu'il existe dans la table. Il sera affiché
dans un label et définira le nom de la zone de saisie
$pTypeChamp : type (booléen, BIT, varchar, ...) du champ. Sert à
déterminer le format de saisie (case à cocher, zone de texte)
$pLongueur : longueur du champ en nombre de caractère : sert à distinguer
les zones de texte standard des textarea
$pFichier : objet fichier dans lequel on écrit le code généré
Contenu de la page PHP qui réalise les récupérations du formulaire HTML
Contexte GSB – BTS SIO – V1.2 – Utilisation du module d'authentification Page 2/3
function ecritRecupform( $pTable, $pMethode, $pFichier))
//écrit dans un fichier le code PHP de création de variables à partir des données
récupérées d'un formulaire
$pTable : nom de la table
$pMethode : valeur à donner à la propriété method ("GET" ou "POST") du
formulaire
$pFichier : objet fichier dans lequel on écrit le code généré
function traiteUnChampRecup($pNomChamp, $pMethode, $pFichier)
//écrit le code permettant de récupérer dans une variable le
$pNomChamp : Nom du champ tel qu'il existe dans la table
$pMethode : nom de la méthode ("GET" ou "POST") par laquelle les
données ont été transférées
$pFichier : objet fichier dans lequel on écrit le code généré
Affichage de la structure de la table
function afficheStructure( $pTable)
// affiche dans la page en cours la structure d'une table (champs/type/taille)
$pTable : nom de la table à afficher
Contexte GSB – BTS SIO – V1.2 – Utilisation du module d'authentification Page 3/3