- Learn
- Guida PHP su Linux
- Verifica del funzionamento dell’estensione php-mysql
Verifica del funzionamento dell’estensione php-mysql
PHP funziona, MySQL funziona, ma i due strumenti riescono a collaborare? Per esserne certi, dobbiamo assicurarci che l’estensione PHP per MySQL (il pacchetto php-mysql o php5-mysql) sia correttamente caricata. Normalmente non ci sono problemi, il tutto viene gestito in automatico quando installiamo i pacchetti, ma la verifica da effettuare è relativamente semplice e ci può togliere un eventuale dubbio.
Creiamo uno script PHP che esegue semplicemente la connessione a MySQL e la selezione del database di test (un database inizialmente vuoto, accessibile a qualsiasi utente, utilizzabile appunto per i test, che andrebbe comunque eliminato se il server MySQL viene messo in produzione).
<?php
// Connessione a MySQL
$link = mysql_connect(‘localhost’, ‘root’, ”) or die(‘Connessione fallita: ‘ . mysql_error());
// Selezione database di test
mysql_select_db(‘test’) or die(‘Selezione DB fallita: ‘ . mysql_error());
// E’ tutto ok, chiudo la connessione
echo ‘OK’;
mysql_close($link);
?>
Lo script è banalissimo e la sintassi delle funzioni, in caso di dubbio, può essere verificata sul manuale di Php. L’unica nota riguarda l’eventuale fallimento delle funzioni mysql_connect() o mysql_select_db(), che provocherebbe la terminazione dello script, mediante die(), e l’output del messaggio d’errore, tramite mysql_error().
Il file va salvato con estensione .php all’interno della DocumentRoot di Apache, ad esempio con nome “testdb.php”, e va richiamato da browser digitando l’indirizzo http://localhost/testdb.php. Se tutto va per il verso giusto, otterremo un rassicurante “OK” sul nostro monitor. In caso contrario, uno dei possibili errori potrebbe essere:
Fatal error: Call to undefined function: mysql_connect() in /var/www/testdb.php on line 3
Questo significa che la funzione “mysql_connect()” non è stata definita (“undefined”), ma essendo una funzione esistente, questo è sintomo del fatto che l’estensione php-mysql non è caricata correttamente. Andiamo quindi a spulciare il file di configurazione php.ini, cercando nella sezione delle estensioni, la riga seguente:
; extension=mysql.so
Il punto e virgolo iniziale trasforma questa direttiva in un commento, per cui è necessario toglierlo per far sì che l’oggetto mysql.so, contenente le funzioni mysql_* venga effettivamente caricato. Nel caso in cui non sia presente una riga del genere, è necessario inserirla.
Se vuoi aggiornamenti su Verifica del funzionamento dell'estensione php-mysql inserisci la tua email nel box qui sotto:
Compilando il presente form acconsento a ricevere le informazioni relative ai servizi di cui alla presente pagina ai sensi dell'informativa sulla privacy.
La tua iscrizione è andata a buon fine. Se vuoi ricevere informazioni personalizzate compila anche i seguenti campi opzionali:
Compilando il presente form acconsento a ricevere le informazioni relative ai servizi di cui alla presente pagina ai sensi dell'informativa sulla privacy.
I Video di HTML.it
Convertire video con Freemake Video Converter
Freemake Video Converter è un software gratis con tantissime funzioni per il download e la conversione di file multimediali: con Freemake […]