View Full Version : php & mysql
Ciao a tutti. Ho installato il web server Apache 2.2.3 su Windows, insieme a php 5.2.0 e mysql 5. Tutta la configurazione del web server e di php va a buon fine, nessun errore. Il problema sorge in seguito all'installazione di phpMyAdmin per gestire i db con php: decommento l'estensione mysqli.dll in php.ini, nella mia DocumentRoot c:\www inserisco la cartella di phpMyAdmin nella quale è presente il file config.default.php rinominato in config.inc.php. Digitando poi nel browser localhost://phpMyAdmin invece di visualizzare la pagina web di controllo di phpMyAdmin vedo un bel messaggio di errore:
phpMyAdmin - Errore
Impossibile caricare l'estensione mysql,<br />prego controllare la configurazione di PHP
Dove sbaglio?
Grazie
Impossibile caricare l'estensione mysql,<br />prego controllare la configurazione di PHPVai nel file php.ini (il file di configurazione del PHP) e localizza le seguenti righe:
;extension=php_mysql.dll
;extension=php_mysqli.dllQuasi sicuramente hanno il ; davanti (cioè "commentate"). Togli il ; e riavvia il server.
avevo già provato a farlo purtroppo..... Non riesco proprio a capire dov'è l'errore... la cartella phpMyAdmin è giusto metterla nella DocumentRoot no? altrimenti digitando localhost/phpMyAdmin non la troverà mai
avevo già provato a farlo purtroppo..... Non riesco proprio a capire dov'è l'errore... la cartella phpMyAdmin è giusto metterla nella DocumentRoot no? altrimenti digitando localhost/phpMyAdmin non la troverà maiCi sono altre cose da verificare:
- Nella directory del PHP c'è una directory 'ext'. Lì dentro ovviamente ci devono essere le dll php_mysql.dll e php_mysqli.dll.
- Nel file php.ini bisogna impostare correttamente la direttiva 'extension_dir'. La linea c'è già ma va messo il path corretto e completo della 'ext' vista al punto precedente:
extension_dir = " ... path della ext ..."
nel file php.ini ho inserito
extension=C:/PHP/ext/php_mysql.dll
extension=C:/PHP/ext/php_mysqli.dll
nella sezione Dynamic Extensions
... ma niente ...
la riga extension_dir è già C:/php/ext
ciao riavvia il pc dopo ke ha modificato il file "php.ini",sai quanto giorni ho passato per risolvere questo banalissimo problema!!
niente da fare purtroppo... non riesco a capire... phpMyAdmin a parte, non c'è un modo per poter eseguire un'applicazione php che esegue operazioni su un db senza usare questo tool?
extension=C:/PHP/ext/php_mysql.dll
extension=C:/PHP/ext/php_mysqli.dllNon serve (e non ci vuole) il path completo! Guarda come sono tutte le altre.
la riga extension_dir è già C:/php/extSu Windows i separatori di directory devono essere quelli di Windows, quindi C:\...
Correggi e riavvia il server web.
EDIT: scrivi un piccolo file php, es. info.php con dentro:
<?php phpinfo(); ?>
mettilo ad esempio nella root del sito e poi apri col browser http://localhost/info.php e verifica che l'estensione del MySQL sia caricata!
ho tolto il percorso assoluto, ho riavviato il web server e adesso la pagina di phpMyAdmin si mostra così:
Benvenuto in phpMyAdmin 2.9.1
La ragione di questo è che probabilmente non hai creato alcun file di configurazione. Potresti voler usare setup script per crearne uno.
Errore
Messaggio di MySQL: Documentazione
#1045 - Access denied for user 'root'@'localhost' (using password: NO)
nel file info.php l'estensione di MySQL dove dovrebbe trovarsi? nella prima tabella?
:help:
Ho trovato questa tabella nel info.php:
mysql
MySQL Support enabled
Active Persistent Links 0
Active Links 0
Client API version 5.0.22
Dovrebbe essere ok per l'estensione no?
mysql
MySQL Support enabled
Active Persistent Links 0
Active Links 0
Client API version 5.0.22Vuol dire che l'estensione del MySQL è caricata. ;)
Per quanto riguarda phpMyAdmin, non ti so dire nulla, non lo conosco.
ok, grazie mille lo stesso ;)
Ho notato che è lo stesso errore che si ha quando da prompt dei comandi digito
mysql -u root
al posto di
mtsql -u root -p
....
Come temevo: mi sono creato un file php:
define("DB_USER", "utente");
define("DB_NAME", "aw");
define("DB_PASSWORD", "pwd");
defin("DB_HOST", "localhost");
$dbconn = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD) or die("can't connect to db server");
mysql_select_db(DB_NAME) or die("can't open db");
- premetto che sia l'utente "utente" che il db "aw" esistono -
provo ad aprirlo e mi ritorna:
Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'utente'@'localhost' (using password: YES) in C:\www\prove\DATABASE\db.php on line 7
can't connect to db server
qualcuno sa dirmi perchè?
trovato l'inghippo :) c'era un errore nelle politiche di grant agli utenti :)
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.