L’introduction dans SPIP 2
En SPIP 2.x, pour permettre d’explorer rapidement les tables d’une base [1] , un mécanisme de création automatique d’un squelette se déclenche lorsque la valeur du paramètre d’URL page est de la forme /?page=table:
articles
[2].
Ce vertébreur visualise le contenu de la table selon plusieurs modes de navigation, et permet de sauvegarder le squelette créé (ce squelette est stocké dans ./tmp/
).
Il est ainsi facile de développer un utilitaire de gestion de bases de données avec SPIP, donc éventuellement multi-serveurs (SPIP3 intègre le menu de configuration de fichiers de connexion à des bases annexes).
Pour des raisons de confidentialité, ce mécanisme n’est accessible qu’au webmestre principal mais peut être plus ouvert en surchargeant la fonction autoriser_webmestre.
Précisions apportées dans Les Bases de données en SPIP : les administrateurs du site bénéficient d’un traitement spécial échafaudage automatique (scaffolding) : lorsqu’ils donnent à leur navigateur l’URL de leur site suivi de ?page=table:table
où table est le nom d’une table de la base, SPIP va automatiquement construire un squelette spécifique à cette table, permettant d’en examiner le contenu avec une grande ergonomie. Le squelette produit par styliser
est affichable à travers le lien squelette en bas de page. Il est possible alors de le copier à la souris (cliquer en haut de colonne pour cacher la numérotation des lignes) et de l’améliorer en le travaillant sous un éditeur approprié.
À noter qu’avec cette production automatique, SPIP pourrait, à la limite, fonctionner sans aucun squelette prédéfini.
Utilisation en consultation sous SPIP 3
En SPIP 3.o, la page ./ecrire/?exec=vertebres
[3] liste les différentes tables de SPIP [4]. Un clic sur le nom de l’une d’elles permet d’en afficher le contenu. Chaque colonne dispose à son sommet d’une icône de loupe. En cliquant dessus, on a accès à un champ de type input. Ce champ permet de filtrer les entrées de la table et d’afficher toutes celles correspondant à la valeur entrée.
Plus besoin de PhpMyAdmin pour Afficher le contenu d’une table
un appel de l’url ?page=table:nom_de_la_table depuis l’espace public affichera sous forme de tableau le contenu de la table nommée.
par exemple : ?page=table:articles pour la table spip_articles [5].
La première ligne de ce tableau liste les champs de la table dans l’ordre alphabétique (attention : ne pas confondre « N° » et « id_... ») ; un clic sur l’un de ces champs ordonnant les résultats (ascendant/descendant).
La deuxième ligne permet d’effectuer une recherche filtrante sur une valeur spécifique d’un champ.
L’ensemble des données est affiché en mode paginé, par groupe de 10 résultats.
À noter : Cette fonction permettant d’afficher l’intégralité des données de toutes les tables de la base de données n’est utilisable que par un webmestre loggé.
Mise-à-Jour
Non, cela n’est pas prévu pour... ;) Voyez phpMyAdmin ou Adminer.
Declarations complémentaires / jointures ?
[1] Nouveauté introduite en SPIP 2.0 : Accès à plusieurs bases et serveurs, fusion partielle et squelettes automatiques.
[2] Nom logique ou ’physique’ de la table (avec ou sans préfixe) au choix à utiliser en SPIP 2.
[3] Option réservée au Webmestre, donc il n’y a pas de bouton associé dans les menus de l’interface privée !
[4] L’interface montre toutes les tables de la base, filtrées sur le prefixe !
[5] Pour des tables non-SPIP, il faut préciser le nom physique complet de la table.