Non seguo da vicino lo sviluppo di PHPMyAdmin, ma lo uso quotidianamente e da qualche tempo, con il rilascio della versione 4.6.6 ho notato diversi avvisi ed errori, che non impediscono l’utilizzo del programma ma lo ostacolano, parecchio.
Ho indagato e ho scoperto che questi errori non sono imputabili interamente a PHPMyAdmin, ma sono generati dalla non completa compatibilità tra PHPMyAdmin e PHP versione 7.2. Fortunatamente sono errori di facile risoluzione; basta modificare leggermente il codice di alcune librerie di PHPMyAdmin.
Warning in ./libraries/sql.lib.php#613 count(): Parameter must be an array or an object that implements Countable
Si risolve andando a modificare il citato file sql.lib.php e modificando questa riga di codice:
Sostituendola con questa:
Salva ed esci dal file. Non resta che riavviare Apache per completare la procedura.
Il secondo errore appare invece nelle schede Esporta e Importa ed è simile al primo come messaggio di errore:
Warning in ./libraries/plugin_interface.lib.php#551 count(): Parameter must be an array or an object that implements Countable
Anche per risolvere questo errore è necessario modificare il file che compare nel messaggio, ovvero plugin_interface.lib.php. Anche per questo errore si tratta di modificare leggermente una sola riga di codice, questa:
Se non trovi questa riga di codice, prova a cercare, in alternativa questa:
andandola a modificare, in ogni caso così:
Al riavvio di Apache, finalmente, ti sarai liberato di quei fastidiosi messaggi di errore.
Ho indagato e ho scoperto che questi errori non sono imputabili interamente a PHPMyAdmin, ma sono generati dalla non completa compatibilità tra PHPMyAdmin e PHP versione 7.2. Fortunatamente sono errori di facile risoluzione; basta modificare leggermente il codice di alcune librerie di PHPMyAdmin.
Gli errori
Ho riscontrato due tipi di errori; il primo compare ogni volta che si apre una tabella:Warning in ./libraries/sql.lib.php#613 count(): Parameter must be an array or an object that implements Countable
Si risolve andando a modificare il citato file sql.lib.php e modificando questa riga di codice:
(count($analyzed_sql_results[‘select_expr’] == 1)
Sostituendola con questa:
((count($analyzed_sql_results[‘select_expr’]) == 1)
Salva ed esci dal file. Non resta che riavviare Apache per completare la procedura.
Il secondo errore appare invece nelle schede Esporta e Importa ed è simile al primo come messaggio di errore:
Warning in ./libraries/plugin_interface.lib.php#551 count(): Parameter must be an array or an object that implements Countable
Anche per risolvere questo errore è necessario modificare il file che compare nel messaggio, ovvero plugin_interface.lib.php. Anche per questo errore si tratta di modificare leggermente una sola riga di codice, questa:
if (! is_null($options) && count($options) > 0) {
Se non trovi questa riga di codice, prova a cercare, in alternativa questa:
if ($options != null && count($options) > 0)
andandola a modificare, in ogni caso così:
if (! is_null($options) && count((array)$options) > 0) {
Al riavvio di Apache, finalmente, ti sarai liberato di quei fastidiosi messaggi di errore.
X
THE END
THE END