phpMyAdmin 4.6.6 verträgt sich nicht mit PHP7.2

9
15480
lmonk72 / Pixabay

Nachdem mein Debian Stretch auf PHP7.2 umgestellt wurde, habe ich bemerkt, dass phpMyAdmin 4.6.6 Probleme mit der neueren Version hat. 

Die Tabellen wiesen folgenden Fehler auf:

phpMyAdmin – Fehlernmeldung
Warning in ./libraries/sql.lib.php#613
 count(): Parameter must be an array or an object that implements Countable

Backtrace

./libraries/sql.lib.php#2128: PMA_isRememberSortingOrder(array)
./libraries/sql.lib.php#2079: PMA_executeQueryAndGetQueryResponse(
array,
boolean true,
string 'pastebin',
string 'prefix_comment',
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
string '',
string './themes/pmahomme/img/',
NULL,
NULL,
NULL,
string 'SELECT * FROM `prefix_comment`',
NULL,
NULL,
)
./sql.php#221: PMA_executeQueryAndSendQueryResponse(
array,
boolean true,
string 'pastebin',
string 'prefix_comment',
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
string '',
string './themes/pmahomme/img/',
NULL,
NULL,
NULL,
string 'SELECT * FROM `prefix_comment`',
NULL,
NULL,
)

Um phpMyAdmin wieder zum Arbeiten zu überreden, editiert man die Datei /usr/share/phpmyadmin/libraries/sql.lib.php wie folgt:

# nano /usr/share/phpmyadmin/libraries/sql.lib.php

Man sucht die Zeile 

|| (count($analyzed_sql_results['select_expr'] == 1)

und bearbeitet sie entsprechend.

|| ((count($analyzed_sql_results['select_expr']) == 1)

Nach dem Neustart des Webservers sollte nun alles wieder korrekt laufen.

# service apache2 restart
phpMyAdmin

Viel Spaß!

Nachtrag

Ein weiteres Problem wurde erst nach der Auswahl von “Exportieren” oder “Importieren” sichtbar.

phpMyAdmin – Fehlermeldung
Warning in ./libraries/plugin_interface.lib.php#551
 count(): Parameter must be an array or an object that implements Countable

Backtrace

./libraries/display_export.lib.php#381: PMA_pluginGetOptions(
string 'Export',
array,
)
./libraries/display_export.lib.php#883: PMA_getHtmlForExportOptionsFormat(array)
./libraries/display_export.lib.php#1099: PMA_getHtmlForExportOptions(
string 'table',
string 'pastebin',
string 'pb_comment',
string '',
integer 0,
array,
integer 0,
)
./tbl_export.php#143: PMA_getExportDisplay(
string 'table',
string 'pastebin',
string 'pb_comment',
string '',
integer 0,
integer 0,
string '',
)

Hierzu wird mit

# nano /usr/share/phpmyadmin/libraries/plugin_interface.lib.php

die Zeile

if ($options != null && count($options) > 0) {

durch

if ($options != null) {

ersetzt und der Webserver mit

# service apache2 restart

nochmals neu gestartet.

9 Kommentare

  1. Auch von mir vielen Dank. Problem aufgetreten, Lösung gesucht, gefunden, eingepflegt – Problem gefixt. Super Arbeit 🙂

  2. Hallo, …
    …mein Wissen bezüglich php Programmierung ist nicht ganz so üppig. Habe die Korrekturen gemacht.
    Meine Fehlermeldung lautet etwas anders:
    Warning in ./libraries/sql.lib.php#1880
    count(): Parameter must be an array or an object that implements Countable

    Die Fehlernummer s.o. 1880

    Hochachtung für die viele Arbeit
    Jürgen Frenzel

Kommentieren Sie den Artikel

Bitte bestätige diesen Kommentar!
Bitte den Namen hier eingeben

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.