Mlam page principale

SourceForge Logo

Lister des données avec mlam ?


Introduction
Le but principal de mlam est d'éditer le contenu de bases de données avec des interfaces html. Néanmoins, il faut un moyen d'accéder aux données, et développer des pages listant les données (éventuellement sur plusieurs pages quand il y a trop d'enregistrements) ou même créer un outil de recherche s'avère souvent fastidieux. Heureusement (!), toutes ces tâches peuvent être effectuées par mlam, avec pas mal de possibilités.

Fonctionalités
Avec l'outil d'administration de mlam, sur la page de création d'une structure d'édition, un lien permet de basculer sur une page pour régler l'affichage listant les données. Cette page contient une structure contenant tous les champs de la table courante. On peut spécifier à ce niveau les données qui seront affichées pour chaque enregistrement, le nom donnée à ces données, l'ordonnancement des enregistrements, et les champs utilisés comme moteur de recherche. Mis à part au moins un champs à afficher, toutes les données sont optionnelles. Pour mettre en oeuvre l'affichage de ce listing, il suffit d'une page .php contenant au moins les lignes suivantes :
<?session_start();?>
<html>
<head>
</head>

<body>

<form method=post action='votre_fichier.php'>
<?
require("mlam_tables_def.php");
mlam_form("nom_de_structure",$id);
?>
<input class=button type=submit value='Valider les changements'>
</form>

</body>

</html>
En fait, c'est exactement le même fichier que pour l'édition d'un enregistrement. La seule différence se fait dans l'appel de cette url. Si le paramètre id n'est pas présent, on liste les données. Si id a une valeur, c'est l'enregistrement courant qui est affiché. Donc, pour lister les données, il suffit d'appeler "http://votresite/votre_fichier.php", et voila !

Outil d'administration

Il se présente comme suit :
Edition des paramètres pour lister ou chercher des données
Nom du fichier d'édition des données :
Nom du champAffiché ?PositionSous quel nom ?Tri ?Ordre de triRecherche ?Sous quel nom ?
designation
datePremiereEdition
Champs listés
Les données apparaissent ligne par ligne. Chaque ligne affiche les champs sélectionnés. Pour choisir le contenu d'un champ, il suffit de sélectionner l'option Affiché ?. Vous avez aussi la possibilité de choisir l'ordre d'affichage des données (Position). Ici, designation sera affiché avant datePremiereEdition. Enfin, il est préférable d'indiquer à quoi correspond ce champ.
Le résultat ressemblera à quelque-chose comme ça :
IntituléDate de première édition
nom 1date 1
nom 2date 2
Dans l'outil d'administration de mlam, on peut définir le nombre maximum de données affichées à chaque listing de données. Ce nombre est aussi utilisé ici (pour éviter des pages avec des centaines d'enregistrement). Quand la limite est dépassée, mlam propose automatiquement des liens vers les prochains enregistrements (ou précédent suivant les cas).

Trier les données
Cette fonction est optionnelle. On peut utiliser autant de champs que voulu pour trier les données qui seront affichées. Il suffit de sélectionner ASC ou DESC dans la colonne Tri ? pour chaque champ désiré. ASC signifie tri ascendant, et DESC descendant. Ensuite, la colonne Ordre de tri permet d'indiquer les priorités à utiliser dans le processus de tri (comme dans une requête sqlà. Dans le cas présenté ici, la liste est ordonnée de façon ascendante par le champ designation. La requête sql correspondante contient "order by designation asc".

Outil de recherche
Si la colonne Recherche ? est sélectionnée pour au moins un champ, un moteur de recherche sera disponible dans la page listant les données. Il permet à l'utilisateur de rechercher des données pour chaque champ sélectionné. Le moteur interne de mlam s'adapte au différents types de données. Son interface est la suivante :
type caractères : Titre :
type nombre : Age : <= et/ou >=
type date : Date de création : <= and/or >=
Pour le format date, les données soumises sont vérifiées par mlam avant de les utiliser.
Note : si l'utilisateur renseigne plus d'une option de recherche, les données retournées satisferont à toutes les indications données.