Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

LuX_

erro na conexão mysql com php

Recommended Posts

O erro é esse:

Call to undefined function mysql_connect() in C:\Inetpub\wwwroot\asp\projeto\login.php on line 2

 

Estou usando o php com o IIS.

 

Configurei tudinho que é pra ser feito nas propriedades do iis para rodar o php e de fato rodou!

adicionei a extensão, o arquivo, enfim tudo certo.

 

Mexi na variável path também.

 

Enfim, após instalar o mysql server 5 eu me conectei a ele pelo programa mysql-front! [mil vezes melhor que o phpmyadmin na minha opinião]

 

configurei a conexão como localhost selecionei o banco que ia carregar e funcionou tudo lindo!

 

porém sempre que tento me conectar ao banco pelo php me aparece o erro descrito acima.

 

Encontrei em outro tópico do imasters que era para habilitar a dll do mysql e eu fiz isso, porém o erro persiste.

Espero que possam me ajudar, abraço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não parece ser um erro de código.

É algum erro de configuração, porque está dizendo que não encontrou a função mysql_connect(). Como nunca usei o PHP no IIS, não vou poder ajudar.

 

Mas não creio que haja necessidade de postar o código.

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

<?php
$banco = mysql_connect("localhost","root","13579");
mysql_select_db("cbib");
$sql = "Select * from Cliente where login =' " . $_POST['txtlogin'] . "' and senha='" . $_POST['txtsenha'] . "';";
$resultado = mysql_query($sql);
$rs = mysql_fetch_array($resultado);

if($rs)
{
	$_SESSION['usuario'] = $rs['codigo_cliente'];
}
mysql_close($banco);
echo '<script language="JavaScript" type="text/javascript">location.href "restrict.php"</script>';
?>

essa é a página que faz o acesso

Compartilhar este post


Link para o post
Compartilhar em outros sites

1. execute o phpinfo() e informe aqui o caminho real do php.ini mostrado na tabela gerada pelo phpinfo()

 

2. na mesma tela gerada pelo phpinfo(), procure por mysql, caso não encontre, há algum problema para não estar carregando.

 

3. ainda na tela do phpinfo(), procure por extension_dir, e informe aqui qual o real valor.

 

4. qual a versao do php, mysql, iis e sistema operacional ?

 

5. verifique se o diretorio root do php está nas variáveis de ambiente do sistema operacional, pois o ambiente do sistema operacional precisa carregar o arquivo libmysql.dll que vem junto com o php. Esse arquivo está na mesma pasta do php.exe.

Alguns recomendam copiar e colar esse arquivo e outros para dentro das pastas do sistemas operacional, mas não faça isso.

Primeiramente siga todos os passos para termos certeza do que está acontecendo.

 

6. o php está como isapi ou cgi no IIS ?

 

 

siga esses passos e informe-nos aqui, pois há possibilidade de você estar editando um php.ini errado, é bastante comum entre iniciantes.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Viiiish ninguém?

Ta batendo o desespero já!

Bom amigão, é simples...

 

Você não tem o mysql instalado no seu servidor.

 

Para instalar: http://br.php.net/manual/en/mysql.installation.php

Compartilhar este post


Link para o post
Compartilhar em outros sites

está instalado..

 

deixou isso bem claro nesse trecho:

 

Enfim, após instalar o mysql server 5 eu me conectei a ele pelo programa mysql-front

só falta ativar adequadamente a biblioteca libmysql e php_mysql para o php e o iis

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá gente! Eu habilitei o php_mysql sim.

agora esse libmysql onde habilita? No próprio php.ini?

Vou fazer os passos que foram Falados assim que possível, obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Hinom.

aqui está:

 

Configuration File (php.ini) Path C:\WINDOWS

 

Encontrei 2 ocorrências de mysql:

 

Environment

Path C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Arquivos de programas\ATI Technologies\ATI.ACE\Core-Static;C:\PHP;C:\Arquivos de programas\MySQL\MySQL Server 5.0\bin

 

PHP variables

 

C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Arquivos de programas\ATI Technologies\ATI.ACE\Core-Static;C:\PHP;C:\Arquivos de programas\MySQL\MySQL Server 5.0\bin

 

extension_dir:

extension_dir C:\php5 C:\php5

respectivamente o local e o master

 

achei estranho pq essa pasta não existe o meu php está em C:\PHP

 

Sistema: Windows XP Professional SP3.

IIS do Windows XP é o 5 né?

 

Meu PHP é o 5.2.6

Meu Mysql é o 5.0

 

variáveis de ambiente:

%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\Arquivos de programas\ATI Technologies\ATI.ACE\Core-Static;C:\PHP;C:\Arquivos de programas\MySQL\MySQL Server 5.0\bin

 

ali no meio tem C:\PHP e do lado tem o caminho do Mysql então acho que está certo!

 

 

6. o php está como isapi ou cgi no IIS ?

Não manjo oq ue é isso =/

 

Espero que possam me ajudar!

valeu!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Solução para resolver este problema "Call to undefined function mysql_pconnect" , Resolvido!

 

Isso é um problema de conexão com o mysql

 

Simples solução:

 

Desinstale o PHP e o Mysql

 

Instale primeiramente o PHP após o MySql.

 

Após isso proceda com as conigurações que você encontra no forum mesmo.

 

Isso resolver definitivamente este problema.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tavinho, desculpe se for ofensivo, mas isso não é uma solução.. parece até piada.

 

 

LuX_

 

se você prestar um pouco de atenção vai encontrar o motivo do problema

 

Nas variáveis de ambiente

 

Path C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Arquivos de programas\ATI Technologies\ATI.ACE\Core-Static;C:\PHP;C:\Arquivos de programas\MySQL\MySQL Server 5.0\bin

em negrito, está o caminho de onde possivelmente o PHP está instalado

 

compare esse valor com o que está definido para extension_dir

 

extension_dir C:\php5

tenho algumas outras observações importantes e respostas as suas perguntas,

 

mas primeiramente, para não complicar, informe aqui

 

 

1. qual o real caminho onde está instalado o PHP ?

 

2. como fez z instalação ? manualmente ou usando o instaldor ?

 

3. onde fez download do PHP ?

 

4. Essa é a primeira vez que instala o PHP nesse Pc ou já possuía outra versão instalada ?

 

5. Dentro da pasta C:\windowsm existe um arquivo php.ini ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tavinho, era melhor você nem ter postado!

Hinom, obrigado pela ajuda mais uma vez.

Não existe nenhum arquivo php.ini no C:\WINDOWS

 

Eu instalei o php zipado do próprio site.

Segui os procedimentos normais que tem em qualquer tutorial pela internet.

 

Sim, na resposta dos passos que você me pediu para seguir eu ressaltei que achei estranho o C:\PHP5 na extensions_dir, pois essa pasta não existe.

O Caminho real é o que eu coloquei nas variáveis de ambiente: C:\PHP

 

Você me disse que não é bom colocar arquivo do php ou do mysql nas pastas de sistema.

 

Porém, como eu vi que no phpinfo ele sitava que o configuration file estava no C:\WINDOWS eu, por procedimento de emergência copiei ele, a dll do mysql que acho que é libmysql.dll e o my.ini pra pasta do windows e o mysql_connect funcionou.

 

Porém, gostaria de manter os arquivos onde de fato estavam antes.

 

Obrigado pela ajuda!

Compartilhar este post


Link para o post
Compartilhar em outros sites

1. exclua o arquivo my.ini da pasta windows

 

2. Explicação sobre o path do php.ini inexistente:

Por definição padrão, quando não encontra um caminho definido para o php.ini, é definido o caminho do sistema operacional, no caso de ambientes windows.

Se o php.ini não existir no diretório do sistema operacional, o compilador do php carregará configurações padrões definidas internamente.

 

3. Certifique-se de que o caminho onde está o php.exe seja exatamente "C:\PHP".

Se setiver em letra minúscula, troque a variável de ambiente ou o nome da pasta para o mesmo nome. É irrelevante, mas padronize apenas por segurança e organização.

 

4. na mesma pasta do php.exe, deve existir um arquivo chamado "php.ini-recommended"

renomeie-o para php.ini caso não exista nenhum outro php.ini já definido.

 

5. utilizando um editor de textos (bloco de notas), abra o php.ini,

ative todas as mensagens e warning de errors.

 

6. no php.ini procure por extension_dir e configure o path correto, provavelmente: "c:\php\ext"

 

7. no php.ini localize php_mysql.dll e habilite-o removendo o símbolo ";"

 

8. no php.ini procure por upload_tmp_dir e configure um path correto, verifique se o caminho possui permissões adquadas para upload, etc.. Por definição padrão o caminho é a pasta temporária do sistema operacional.

 

9. no php.ini procure por session_save_path e faça o mesmo, verifique se o caminho possui permissões de escrita e leituram, etc.. se quiser para organizar melhor, modifique o caminho para um local mais apropriado para gerenciamento. Por definição padrão o caminho é a pasta temporária do sistema operacional.

 

salve o arquivo php.ini

 

Reinicie a sessão do IIS.

 

obs: Se fizer modificações nas variáveis de ambiente é recomendável reiniciar o Sistema Operacional.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.