problema con phpmyadmin: count(): Parameter must be an array

Installazione, configurazione e uso di programmi e strumenti.
Scrivi risposta
Avatar utente
london3
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 555
Iscrizione: domenica 19 gennaio 2014, 16:22
Desktop: ubuntu:GNOME
Distribuzione: Ubuntu 22.04.1 LTS

problema con phpmyadmin: count(): Parameter must be an array

Messaggio da london3 »

Mi collego a http://localhost/phpmyadmin/ e vado ad aprire una tabella di uno dei miei database, ma mi appare
https://cdn-images-1.medium.com/max/800 ... UOIn6A.png
Questo succede da quando ho aggiornato php alla versione 7.2.11-2+ubuntu16.04.1+deb.sury.org+1
Perchè?
Computer: Lenovo ThinkPad L480
Avatar utente
Luca Gasperini
Prode Principiante
Messaggi: 23
Iscrizione: lunedì 7 gennaio 2019, 17:51
Desktop: Plasma
Distribuzione: Ubuntu 18.04 & ArchLinux x86_64
Sesso: Maschile
Località: Roma
Contatti:

Re: problema con phpmyadmin: count(): Parameter must be an a

Messaggio da Luca Gasperini »

Ciao!

Ho avuto lo stesso problema con Ubuntu 18.04 e PHP 7.2, il bug è dovuto alla versione di PhpMyAdmin che è presente nei repository di Ubuntu alla versione 4.6.6-5, la quale non è pienamente compatibile con le versioni più recenti di PHP.
In accordo con l'issue su GitHub è possibile aggiornare la versione di PhpMyAdmin alle più recenti ( almeno la 4.7.8 ) dove il bug è stato risolto, oppure modificare il codice di PhpMyAdmin nel seguente modo:

Codice: Seleziona tutto

#/dir/to/phpmyadmin/libraries/sql.lib.php

(count($analyzed_sql_results['select_expr'] == 1) // errore

(count($analyzed_sql_results['select_expr']) == 1  // fix
Spero che sia di aiuto!
Luca Gasperini - Sviluppatore Open Source per XSoftware
https://www.xsoftware.it / https://www.xsoftware.eu
luca.gasperini@xsoftware.it
Avatar utente
london3
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 555
Iscrizione: domenica 19 gennaio 2014, 16:22
Desktop: ubuntu:GNOME
Distribuzione: Ubuntu 22.04.1 LTS

Re: problema con phpmyadmin: count(): Parameter must be an a

Messaggio da london3 »

Luca Gasperini [url=https://forum.ubuntu-it.org/viewtopic.php?p=5108667#p5108667][img]https://forum.ubuntu-it.org/images/icons/icona-cita.gif[/img][/url] ha scritto:Ciao!

Ho avuto lo stesso problema con Ubuntu 18.04 e PHP 7.2, il bug è dovuto alla versione di PhpMyAdmin che è presente nei repository di Ubuntu alla versione 4.6.6-5, la quale non è pienamente compatibile con le versioni più recenti di PHP.
In accordo con l'issue su GitHub è possibile aggiornare la versione di PhpMyAdmin alle più recenti ( almeno la 4.7.8 ) dove il bug è stato risolto, oppure modificare il codice di PhpMyAdmin nel seguente modo:

Codice: Seleziona tutto

#/dir/to/phpmyadmin/libraries/sql.lib.php

(count($analyzed_sql_results['select_expr'] == 1) // errore

(count($analyzed_sql_results['select_expr']) == 1  // fix
Spero che sia di aiuto!
Come si fa l'aggiornamento?

https://devanswers.co/manually-upgrade-phpmyadmin/

https://stackoverflow.com/questions/200 ... ubuntu-how

Ognuno dice la sua...
Computer: Lenovo ThinkPad L480
Avatar utente
Luca Gasperini
Prode Principiante
Messaggi: 23
Iscrizione: lunedì 7 gennaio 2019, 17:51
Desktop: Plasma
Distribuzione: Ubuntu 18.04 & ArchLinux x86_64
Sesso: Maschile
Località: Roma
Contatti:

Re: problema con phpmyadmin: count(): Parameter must be an a

Messaggio da Luca Gasperini »

london3 ha scritto: Come si fa l'aggiornamento?

https://devanswers.co/manually-upgrade-phpmyadmin/

https://stackoverflow.com/questions/200 ... ubuntu-how

Ognuno dice la sua...
Allora,

Tutti e due i metodi vanno bene, la differenza tra i due è che se lo installi manualmente non l'ho hai integrato con APT, infatti i package manager servono per gestire la vita dei software, se un giorno vorrai disinstallarlo, con apt ti basterà dare:

Codice: Seleziona tutto

sudo apt remove phpmyadmin
Altrimenti dovresti cancellare manualmente tutti i file di PhpMyAdmin, stessa cosa vale per i possibili aggiornamenti, se lo installi con APT se ci sono aggiornamenti puoi scaricarli automaticamente, senza dovresti rimpiazzare la directory di PhpMyAdmin quando vuoi aggiornarli.

Ora, il repository che hai linkato:

Codice: Seleziona tutto

sudo add-apt-repository ppa:nijel/phpmyadmin
Non l'ho testato, non so dirti se effettivamente sia ancora aggiornato (infatti il post è vecchio di 5 anni) o se esiste, quindi se scegli di installarlo da li dai anche:

Codice: Seleziona tutto

apt show nijel/phpmyadmin
Per controllare se la versione è superiore o uguale a quella che ti serve!
Luca Gasperini - Sviluppatore Open Source per XSoftware
https://www.xsoftware.it / https://www.xsoftware.eu
luca.gasperini@xsoftware.it
Avatar utente
london3
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 555
Iscrizione: domenica 19 gennaio 2014, 16:22
Desktop: ubuntu:GNOME
Distribuzione: Ubuntu 22.04.1 LTS

Re: problema con phpmyadmin: count(): Parameter must be an a

Messaggio da london3 »

Fammi capire.
Php 7.2 è uscito da qualche anno, ma phpmyadmin non l'hanno aggiornato.
Perchè?
Computer: Lenovo ThinkPad L480
Avatar utente
Luca Gasperini
Prode Principiante
Messaggi: 23
Iscrizione: lunedì 7 gennaio 2019, 17:51
Desktop: Plasma
Distribuzione: Ubuntu 18.04 & ArchLinux x86_64
Sesso: Maschile
Località: Roma
Contatti:

Re: problema con phpmyadmin: count(): Parameter must be an a

Messaggio da Luca Gasperini »

london3 ha scritto:Fammi capire.
Php 7.2 è uscito da qualche anno, ma phpmyadmin non l'hanno aggiornato.
Perchè?
PhpMyAdmin è aggiornato, semplicemente la versione che trovi sui repository di Ubuntu è vecchia, per farti capire la versione attuale sul sito di PhpMyAdmin è 4.8.4, quella che trovi sui repository di Ubuntu 18.04 è la 4.6.6.
Ti consiglio di modificare la versione che trovi come scritto nel primo messaggio, se non vuoi pacchettizzare (cioè creare un pacchetto .deb) o comunque smanettare troppo per cercare una versione per Ubuntu che non abbia problemi con tutto il sistema di pacchetti.
Luca Gasperini - Sviluppatore Open Source per XSoftware
https://www.xsoftware.it / https://www.xsoftware.eu
luca.gasperini@xsoftware.it
Avatar utente
london3
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 555
Iscrizione: domenica 19 gennaio 2014, 16:22
Desktop: ubuntu:GNOME
Distribuzione: Ubuntu 22.04.1 LTS

Re: problema con phpmyadmin: count(): Parameter must be an a

Messaggio da london3 »

Luca Gasperini [url=https://forum.ubuntu-it.org/viewtopic.php?p=5108701#p5108701][img]https://forum.ubuntu-it.org/images/icons/icona-cita.gif[/img][/url] ha scritto:
london3 ha scritto:Fammi capire.
Php 7.2 è uscito da qualche anno, ma phpmyadmin non l'hanno aggiornato.
Perchè?
PhpMyAdmin è aggiornato, semplicemente la versione che trovi sui repository di Ubuntu è vecchia, per farti capire la versione attuale sul sito di PhpMyAdmin è 4.8.4, quella che trovi sui repository di Ubuntu 18.04 è la 4.6.6.
Perchè non aggiornano il repository?
Ti consiglio di modificare la versione che trovi come scritto nel primo messaggio, se non vuoi pacchettizzare (cioè creare un pacchetto .deb) o comunque smanettare troppo per cercare una versione per Ubuntu che non abbia problemi con tutto il sistema di pacchetti.
Modficare la versione?
Pacchettizzare?
Non sono molto bravo in queste cose, potresti essere un po' dettagliato?
Computer: Lenovo ThinkPad L480
rai
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 2848
Iscrizione: domenica 11 maggio 2008, 18:03
Desktop: plasma
Distribuzione: 22.04
Località: Palermo

Re: problema con phpmyadmin: count(): Parameter must be an a

Messaggio da rai »

Perchè non aggiornano il repository?
dipende dalle politiche di ciascuna distribuzione. Ubuntu (Debian) nell'ambito di una stessa versione del SO fa solo aggiornamenti di sicurezza delle applicazioni perchè dà priorità alla stabilità.

Modficare la versione?
Per fare la modifica senza cambiare versione

Codice: Seleziona tutto

sudo nano /usr/share/phpmyadmin/libraries/sql.lib.php
cerchi la riga da modificare (è molto in basso, conviene usare Ctrl+W per cercare) e la sostituisci come ti è stato scritto

Pacchettizzare?
AmministrazioneSistema/InstallareProgrammi/DaSorgenti
Programmazione/Checkinstall
Avatar utente
london3
Scoppiettante Seguace
Scoppiettante Seguace
Messaggi: 555
Iscrizione: domenica 19 gennaio 2014, 16:22
Desktop: ubuntu:GNOME
Distribuzione: Ubuntu 22.04.1 LTS

Re: problema con phpmyadmin: count(): Parameter must be an a

Messaggio da london3 »

grazie, sembra funzionare
Computer: Lenovo ThinkPad L480
Avatar utente
Sam9999
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1983
Iscrizione: lunedì 9 giugno 2014, 8:59
Desktop: Studio Xfce
Distribuzione: Ubuntu 20.04 LTS (Focal)
Località: BO
Contatti:

Re: problema con phpmyadmin: count(): Parameter must be an a

Messaggio da Sam9999 »

A me il repository non lo trova "sudo add-apt-repository ppa:nijel/phpmyadmin;"

Allora ho seguito la prima procedura di installazione manuale ed ho risolto quegli errori che mi dava phpmyadmin. :birra:
-------------
S. @-M.
-------------
Avatar utente
Luca Gasperini
Prode Principiante
Messaggi: 23
Iscrizione: lunedì 7 gennaio 2019, 17:51
Desktop: Plasma
Distribuzione: Ubuntu 18.04 & ArchLinux x86_64
Sesso: Maschile
Località: Roma
Contatti:

Re: problema con phpmyadmin: count(): Parameter must be an a

Messaggio da Luca Gasperini »

Sam9999 ha scritto:A me il repository non lo trova "sudo add-apt-repository ppa:nijel/phpmyadmin;"

Allora ho seguito la prima procedura di installazione manuale ed ho risolto quegli errori che mi dava phpmyadmin. :birra:
Nijel è l'attuale maintainer del pacchetto di PhpMyAdmin per Debian, Ubuntu semplicemente prende i propri pacchetti dal repo stable di Debian, come mostrato qui:
http://archive.ubuntu.com/ubuntu/pool/u ... ntu2.1.dsc
Suppongo che quel repository era disponibile prima che lo integrassero nei repo ufficiali di Debian, infatti da allora non ha avuto più aggiornamenti, di seguito il suo repo:
http://ppa.launchpad.net/nijel/phpmyadmin/ubuntu/
Luca Gasperini - Sviluppatore Open Source per XSoftware
https://www.xsoftware.it / https://www.xsoftware.eu
luca.gasperini@xsoftware.it
caturen
Tenace Tecnocrate
Tenace Tecnocrate
Messaggi: 17946
Iscrizione: giovedì 8 aprile 2010, 18:41
Desktop: diversi
Distribuzione: debian

Re: problema con phpmyadmin: count(): Parameter must be an a

Messaggio da caturen »

A me il repository non lo trova "sudo add-apt-repository ppa:nijel/phpmyadmin;"
semplicemente perchè quel ppa arriva solo a supportare ubuntu 17.04 e non oltre.
Scrivi risposta

Ritorna a “Applicazioni”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 25 ospiti