Adminer 6.0.2
Zkompilovaný Adminer načítá statické soubory (CSS, JS, logo) pomocí ?file=default.css s hlavičkami Expires a Cache-Control: immutable. Některé hostingy ale všem PHP skriptům dávají své vlastní hlavičky, které kešování naopak natvrdo vypnou. Skript s tím bez změny konfigurace serveru nemůže nic udělat a Adminer je pak pomalý. Uchýlil jsem se proto k tomuto řešení: Adminer si registruje service worker, který statické soubory nakešuje a při dalším požadavku je servíruje on. Metodou serviceWorker() se to dá vypnout.
Všechny změny, zde jen ty zajímavé:
- Pro databáze bez podpory DDL transakcí Adminer dělá změny tímto postupem: vytvoř zkušební, smaž zkušební, smaž původní, vytvoř nový. Tím se sníží šance, že by se smazal starý objekt a pak se nepodařilo vytvořit nový. Nová verze to dělá i u kontrol
CHECK. - U víceřádkových zkrácených textů je
…místo celého posledního řádku. - Čísla se formátují podle jazykových zvyklostí, např. v češtině se jako oddělovač tisíců používá narrow non-breaking space, v bengálštině má neposlední skupina jen dvě číslice.
- Uložené procedury a funkce při změně dovolují editovat všechny volby, např.
DETERMINISTIC. - Odkaz Načíst další data zůstane viditelný i po odscrollování doprava.
- Zjednodušil jsem RTL rozložení pomocí CSS vlastností
margin-inline-starta spol. - MySQL: Pokud je s tabulkou nějaký problém (např. chybějící datový soubor), tak to MySQL reportuje v komentáři tabulky. Přepíše tím ale původní komentář. Adminer proto nově získá komentář z jiného zdroje a chybu zobrazí jako chybu.
- PostgreSQL: V PDO jsem opravil export
booleansloupců. - SQLite: Přidal jsem podporu fulltextového vyhledávání a ostatních virtuálních tabulek.
- MS SQL: Podporované typy se nyní načítají přímo z databáze.
- Pluginy ovladačů se od předchozí verze kompilují podobně jako Adminer, takže jsem jim mohl přidat typové anotace.
- Přidal jsem vzhled cPanel, který se mi líbí i sám o sobě.
Jakub Vrána, Adminer, 7.9.2026
Diskuse
Jirka:
Pěkný den, chtěl bych se zeptat, zda je nějaký způsob, jak se přihlásit do Admineru přes externí tlačítko? Já třeba používal normální <form>, který pošle (post) na adminer.php parametry auth[driver], auth[server], auth[db], auth[username] a auth[password], ale aktuálně mě to vždy vrátí na úvodní přihlašovací okno Admineru, u předchozích verzí to fungovalo dle očekávání. Ještě je tam nějaký parametr token, jestli to s tím nesouvisí? Děkuju.
Jakub Vrána:
Ano, CSRF (https://php.vrana.cz/cross-site-request-forgery.php) ochranu jsem dal i do přihlašovacího formuláře, protože útočník by mohl přihlásit nevědomého uživatele, který by pak posílal svá data omylem na jeho server. Vypnout se to bohužel momentálně žádným pluginem nedá.
Jakub Vrána:
Přidal jsem plugin https://gist.github.com/vrana/7ed5b7176bfe6a9212324c70ddb6beef. Vyžaduje Adminer 6.1.0-dev.
Jirka:
Rozumím a děkuju. :-)RS:
Napadlo mě dál by se přidat hook pro explain?Chtěl bych si napsat plugin který by vylepšil postgresacky explain a integroval https://pev2.pages.dev/
Děkuji

