Estou tentando carregar uma extensão MySql para desenvolvimento PHP.
Executando <?php phpinfo(); ?>
posso ver que a extensão MySql não está carregada. Isso também fica aparente ao executar um script que usa a mysql_connect
função e receber o erro Fatal error: Call to undefined function mysql_connect() in C:\Apache24\htdocs\test.php on line 11
.
Executando, php --ini
recebo uma saída de:
Loaded Configuration File: C:\php\php.ini
Scan for additional .ini files in: (none)
Additional .ini files parsed: (none)
Portanto, quando edito meu arquivo php.ini para ativar a extensão MySql, sei que estou editando o arquivo .ini correto. A saída de phpinfo()
aponta para o mesmo arquivo.
No meu arquivo php.ini eu mudei
;extension=php_mysql.dll
para
extension=php_mysql.dll
Para meu diretório de extensão em meu arquivo php.ini:
extension_dir = "./ext"
dentro desse diretório eu tenho o php_mysql.dll
arquivo.
Estou um pouco perdido aqui e realmente não sei o que estou perdendo. Todas as respostas que encontrei nos sites SE e em outros lugares apenas apontam para descomentar uma linha no arquivo php.ini e verificar se o extension_dir está apontando para um local que contém o arquivo .dll correto.
O que estou faltando para carregar esta extensão corretamente?
Qualquer ajuda seria muito apreciada.
Responder1
Uma causa comum disso pode ser o diretório de instalação do php não estar incluído na PATH
variável de ambiente (Veja:PHP: Instalação de extensões no Windows), o que faz com que o módulo php não consiga encontrar o mysql.
Algum erro nos logs sobre falha ao carregar a extensão?