Adminer

Cet article constituait initialement le mode d’emploi du script adminer.php,
avant que soit développé le plugin https://plugins.spip.net/adminer.html pour SPIP 2 et SPIP 3, qui intègre directement l’accès au script à l’interface privée de SPIP.

Ce plugin permet d’intégrer le script Adminer dans SPIP, en en limitant l’usage aux webmestres du site.

(Une autre contrib explique comment utiliser Adminer “brut” : Editer votre base “en ligne” avec Adminer )

Utilisation

Adminer se lance depuis un lien dans une fenetre séparée, depuis le menu Maintenance.

Restaurer depuis le serveur

Il est possible de restaurer un dump SQL (généré par Adminer ou le plugin sauveauto), sans devoir utiliser PhpMyAdmin, en lecture directe depuis le serveur.

Il faut uploader un fichier SQL (éventuellement “gzippé”), obligatoirement sous le nom adminer.sql (ou adminer.sql.gz) en chargeant le fichier uniquement sous ce nom, directement sous le répertoire principal d’Adminer, soit -pour SPIP- sous le répertoire /plugins/auto/adminer/x.y.z/ (ou équivalent, en fonction de votre installation du plugin).

Ce fichier peut ne pas être un dump complet d’ailleurs, mais juste un ensemble de requêtes.

Ajout de plugins

Le pipeline adminer_plugins permet d’ajouter des plugins à Adminer, dont on peut trouver la liste sur le site officiel (plugins officiels et user-contributed).

Exemple d’utilisation :

Copier les plugins choisis dans monplugin/adminer/plugins (convention adoptée par ce plugin SPIP Adminer, mais pas obligatoire).
Les plugins Adminer sont la plupart du temps sous la forme d’un seul fichier PHP.

Dans paquet.xml :

<pipeline nom="adminer_plugins" inclure="monplugin_pipelines.php"/>

Dans monplugin_pipelines.php :

function monplugin_adminer_plugins($flux) {
	foreach (glob(__DIR__ . '/adminer/plugins/*.php') as $filename) {
		require_once $filename;
	}
	
	$flux['data'] = array_merge(
		$flux['data'],
		[
			new AdminerTablesFilter(),
			new AdminerPHPSerializedColumn(),
			new AdminerRestoreMenuScroll(),
		]);

	return $flux;
}

PS : le nom de la classe à instancier (exemple : AdminerRestoreMenuScroll) est obtenu en ouvrant le fichier PHP correspondant (exemple : monplugin/adminer/plugins/restore-menu-scroll.php) et en regardant le nom de la classe au tout début :

<?php
class AdminerFloatThead {
    ...

Discussion

6 discussions

  • 1

    [quote=“Alain BOURDEAU, post:1, topic:188339, full:true, username:Alain_BOURDEAU”]
    Bonjour,
    Sur un spip tout neuf en local pour mettre en route une gestion de type commerciale, pour certaines tables par exemple :
    https://localhost/spip/ecrire/prive.php?server=localhost&username=root&db=spip&table=spip_abonnements_offres_liens
    J’ai systématiquement pour voir le contenu 502 Bad Gateway
    spip 4.4.2
    adminer 4.9.0
    php 8.3.6
    nginx 1.24.0-2ubuntu7.1
    ubuntu 24.02.2
    Version de MySQL : **10.11.8-MariaDB-0ubuntu0.24.04.1** via l’extension PHP **MySQLi**
    interclassement : utf8mb4_general_ci

    Ou trouver plus d’info sur la défaillance
    Merci bien alain
    [/quote]

    • Il faudrait voir les logs PHP pour savoir ce qu’il en est. Mais effectivement il y a quelqu problèmes avec la version 4.4 de spip.

    Reply to this message

  • Je n’ai plus de réponses des liens de sélection, de recherche et de tri sur les tables.

    Vous savez d’où cela vient?

    Reply to this message

  • 6

    Bonjour,
    je n’arrive pas à faire fonctionner adminer avec spip 4.0.9 GIT [4.0: d07feebf] et php 7.4.33 .
    Problème de redirection ou de cookies... quand je suis passé n 8.1 ça marche mais spip 4.0 non !
    Est-ce qu’adminer peut marcher dans ce cas ?

    Reply to this message

  • Bonjour,

    Avec SPIP 4.1.15 en PHP 8.0.8 et Adminer v4.8.1.2 :

    PHP Warning : Undefined variable $Ah in /.../.../site.local/plugins/auto/adminer/v4.8.1.2/adminer.php on line 1787

    Reply to this message

  • spipfactory

    Après passage de la plateforme en spip 4.0.0 et après avoir demandé sur discuter.org la version php a utiliser, nous avons passer les sites en php 8.0.9 (40 sites)

    Résultat global semble satisfaisant, toutefois adminer nous indique

    Fatal error: Uncaught Error: Call to undefined function set_time_limit() in /home/clients/b313813ae3dfa81e21eb5a95d7ad323f/mutusf/plugins/adminer/adminer.php:172 Stack trace: #0 /home/clients/b313813ae3dfa81e21eb5a95d7ad323f/mutusf/plugins/adminer/index.php(97): require_once() #1 /home/clients/b313813ae3dfa81e21eb5a95d7ad323f/mutusf/ecrire/public/evaluer_page.php(51) : eval()’d code(3): include_once(’/home/clients/b...’) #2 /home/clients/b313813ae3dfa81e21eb5a95d7ad323f/mutusf/ecrire/public/evaluer_page.php(51): eval() #3 /home/clients/b313813ae3dfa81e21eb5a95d7ad323f/mutusf/ecrire/public.php(157): include(’/home/clients/b...’) #4 /home/clients/b313813ae3dfa81e21eb5a95d7ad323f/mutusf/ecrire/prive.php(40): include(’/home/clients/b...’) #5 main thrown in /home/clients/b313813ae3dfa81e21eb5a95d7ad323f/mutusf/plugins/adminer/adminer.php on line 172

    Après investigation nous sommes repassé en version php 7.4 et la le plugin refonctionne.
    pour info...

    Reply to this message

  • Ma tentative de mise à jour de 4.8.0.0 en 4.8.0.1 a échoué avec ce message
    Impossible de déballer ../tmp/cache/chargeur/v4.8.0.1-b3120f6f-adminer-770f3-v4.8.0.1.zip
    Je suis en SPIP 3.2.11 [24285]

    Reply to this message

Add a comment

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Who are you?
[Log in]

To show your avatar with your message, register it first on gravatar.com (free et painless) and don’t forget to indicate your Email addresse here.

Enter your comment here

This form accepts SPIP shortcuts {{bold}} {italic} -*list [text->url] <quote> <code> and HTML code <q> <del> <ins>. To create paragraphs, just leave empty lines.

Add a document

Follow the comments: RSS 2.0 | Atom