Vyšel phpMinAdmin 1.9.1

Do nástroje pro správu databáze MySQL phpMinAdmin jsem doplnil několik funkcí týkajících se především hromadných operací, proto jsem vydal novou verzi.

Na stránku s informací o databázi jsem přidal výpis jejích tabulek spolu s informacemi o nich. Na stejné stránce je možné provádět s tabulkami i hromadné operace. Tomuto kroku jsem se dlouho bránil, protože seznam tabulek je v navigaci dostupný na každé stránce, nakonec jsem ale uznal, že další podrobné informace (jako např. hodnota auto_increment, typ tabulky nebo počet řádek) se můžou hodit a navíc je užitečné je vidět pohromadě, takže nemusí strašit v detailu každé tabulky. Díky tomuto výpisu je navíc možné s tabulkami provádět údržbové operace (jako analyzování nebo optimalizace tabulky), které sice osobně nepoužívám, ale někdo je potřebovat může. Na stejném místě lze tabulky přesunout i do jiné databáze.

Další hromadnou operací je editace více záznamů najednou. Funguje to tak, že v hromadné editaci záznamů lze u každého sloupce zvolit, zda si má zachovat svou původní hodnotu nebo zda má dostat hodnotu novou. Bohužel aktuální hodnota sloupce nejde upravit (např. k ní něco přičíst) nebo převzít z jiného sloupce, protože mě k této funkčnosti nenapadá vhodné uživatelské rozhraní.

U každého záznamu přibyla operace klonování – to znamená vytvoření nového záznamu na základě starého. Nový záznam převezme od původního záznamu hodnoty všech sloupců (kromě sloupce auto_increment), umožní je změnit a vloží je do tabulky. I tuto operace lze provádět hromadně.

V editaci záznamu přibyla možnost aplikovat na zadanou hodnotu nějakou vestavěnou funkci. K dispozici je pouze pět funkcí, o kterých si myslím, že je možné je při editaci záznamu smysluplně použít. Pokud byste postrádali nějakou další funkci, tak dejte vědět. Zvažuji ještě přidání funkcí pro matematické operace (např. plus) a operací pro posouvání data a času.

Do výpisu záznamů jsem přidal vyhledávání pomocí NOT operátorů (např. NOT IN) a možnost vyhledávat bez omezení sloupce (stačí nezadat, v jakém sloupci chcete vyhledávat). Pokud není zadaná numerická hodnota, tak se vyhledává v nenumerických sloupcích (protože 0 = 'a'), jinak se hledá ve všech sloupcích.

Další novinky už jen stručně: V editaci uživatele se pro vstupní políčko hesla používá typ password, ve výpisu záznamů jsem zredukoval počet tlačítek a změnu jazyka jsem předělal na výběrový seznam (protože řada odkazů už se do navigace v některých jazykových verzích nevešla).

Opravil jsem také několik chyb:

A co znamená ta setina v čísle verze? Před vydáním jsem zapomněl obeslat překladatele, takže 1.9.0 vyšla s aktuální verzí pouze anglického a českého překladu.

Jakub Vrána, Adminer, 31.10.2008, on-line

Diskuse

ikona v6ak:

Ještě tomu chybí autoupdate...
31.10.2008 03:02:38

ikona Jakub Vrána:

Vážně jsem o něm uvažoval, ale nemám moc rád, když aplikace přistupují na Internet aniž by musely.
31.10.2008 03:18:25

ikona v6ak:

Stačilo by třeba hned po přihlášení nabídnout update. Byl bych rád, kdyby spojení s aktualizačním serverem bylo zajištěno polymorfním mechanismem (kvůli proxy apod.) a kdyby to šlo nastavit v externím souboru, který by nemusel existovat. Taky by bylo dobré, kdyby to šlo zakázat.
31.10.2008 03:50:02

ikona v6ak:

... nebo by to ve výchozím stavu nešlo zakázat, ale povolit.

Pak bych změnil jednosouborovou koncepci PhpMinAdmina na 1-2 souborovou: Jeden soubor by byl povinný a to by byl samotný PhpMinAdmin. Druhý soubor by byl nepovinný a bylo by to jeho nastavení. Pokud by neexistoval, byly by použity výchozí hodnoty.
4.11.2008 07:41:32

ikona Ladislav Prskavec:

Díky za nové funkce, teď už mi to phpmyadmina plně nahradí. Jen se mi nedaří export tabulek s daty, to dřív fungovalo. Žádná chyba se neobjeví jen prázdná stránka.
31.10.2008 08:18:35

ikona Ladislav Prskavec:

Problém se vyskytuje jen u exportu pod tabulkou, nějak se nezmění url nahoře jak by mělo.
31.10.2008 08:19:59

ikona Ladislav Prskavec:

tak moje chyba nic jsem nezatrhnul a tak vysledek byl prazdny, predpokladal jsem ze udela vsechno :-(
31.10.2008 08:23:06

Gimli2:

Narazil jsem na drobny problem, jehoz odstraneni ale bude asi znamenat vetsi zasah:

Pokud pri prohlizeni databaze INFORMATION_SCHEMA a konkretne pohledu ROUTINES kliknu na editaci nejake stored procedury/funkce, ktera je delsi nez 8kB, pokus o editaci selze.
To proto, ze se cele telo procedury cpe encodene do URL, kam se dle specifikace tusim muze vejit max prave tech 8kB.
Testovano na WinXP+SP3 v Opere 9.60 - posledni verze phpminadmina 1.9.1.
3.11.2008 09:59:09

ikona Jakub Vrána:

Ty pohledy v information_schema by především asi vůbec neměly být editovatelné.
4.11.2008 02:02:56

Gimli2:

Tot otazka. Obcas muze byt uzitecne videt napriklad datum posledni upravy dane SP. A kdyz si pak vzpomenu, ze ji chci upravit, tak nemusim preklikavat do dane DB, ale dam primo editovat.
Ale je to asi tak minoritni pripad pouziti, ze si s tim nema smysl delat tezkou hlavu.
Spis jestli neni pouzito stejne predani velkeho mnozstvi dat pres URL i jinde.
5.11.2008 17:26:27

ikona Jakub Vrána:

Ono to technicky není možné – pokud mi něco neuniká, tak MySQL nedovoluje pohledy v information_schema editovat. Muselo by to být namapované na editaci procedury a to už mi přijde jako moc velká magie.
6.11.2008 07:12:03

Gimli2:

Jasne, samotny pohled nezedituju. Ale jim vypsane polozky jdou jen mazat a ne uz editovat. To namapovani asi za to nestoji. ;-)
7.11.2008 01:31:41

Karel:

Včera hodinu před půlnocí, jistý nejmenovaný hosting jménem Flyweb doplnil svoje služby právě o phpMinAdmina - https://klient.flyweb.cz/mysql/phpminadmin/
29.11.2008 08:52:30

Pavel Dvořák:

hazi me to chybu

Warning: array_filter(): The first argument should be an array in /home/web@xxxx.cz/mysql.php on line 551

Fatal error: Unsupported operand types in /home/web@xxx.cz/mysql.php on line 551
13.1.2009 05:24:09

ikona Jakub Vrána:

Díky za upozornění, docházelo k tomu nejspíš u prázdných databází. Opravil jsem to v SVN.
13.1.2009 07:45:21

václav mařík:

Díky za skvělý software, zdá se mi lepší než konkurent.

Co bych doplnil (možná mi ale ještě něco uniká), je možnost při exportu nastavit co exportovat pro všechny tabulky naráz (klikám u 120 tabulek na struktura-přeskočit).

A u okna pro SQL příkazy (fakt se mi líbí zpracování sql příkazů a chybová hlášení) volbu "po první chybě nepokračuj dál" a skvělé by bylo také zpracování pouze označené části SQL skriptu. Píšu nějaké selecty, postupně zjišťuji proč něco nejde a hodilo by se, pokud by se dal odeslat pouze 1 select z několika, přičemž obsah textarea by samozřejmě zůstal nezměněn.

Poslední myšlenka je rozšíření o další DB systémy (MSSQL, Oracle, Firebird, ...).
24.2.2009 03:16:55

ikona Jakub Vrána:

Stačí kliknout na záhlaví sloupce. Asi by to chtělo nějak zvýraznit.

"Po první chybě nepokračuj dál" je dobré rozšíření. Spuštění označeného - to jako že by se JavaScriptem detekovalo, co je označené? To asi dělat nebudu.

Rozšíření na další DB zvažuji, hlavní problém je ten, že to nepotřebuji.
24.2.2009 03:21:32

pojízdná kočka:

Prosíím dotaz: jak se přes phpMinAdmin nastaví DEFAULT ''?
8.3.2009 19:02:36

pojízdná kočka:

…coby výchozí hodnota sloupce v tabulce. Podle toho, co phpMinAdmin udělal, provedl všemi sloupci, u nichž nebyla zadána hodnota, DROP DEFAULT…
8.3.2009 19:05:36

ikona Jakub Vrána:

Nebylo to možné, opravil jsem to v SVN. Díky za upozornění.
9.3.2009 09:17:40
avatar © 2005-2024 Jakub Vrána. Publikované texty můžete přetiskovat pouze se svolením autora. Ukázky kódu smíte používat s uvedením autora a URL tohoto webu bez dalších omezení Creative Commons. Můžeme si tykat. Skripty předpokládají nastavení: magic_quotes_gpc=Off, magic_quotes_runtime=Off, error_reporting=E_ALL & ~E_NOTICE a očekávají předchozí zavolání mysql_set_charset. Skripty by měly být funkční v PHP >= 4.3 a PHP >= 5.0.