Ir para conteúdo

POWERED BY:

Arquivado

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

MarceloPereira

mysql_connect - Php não conecta ao Mysql

Recommended Posts

E ae galera!

Ja procurei bastante!!!

Ja vi essa thread: http://forum.imasters.com.br/index.php?/topic/384285-php-nao-comunica-com-mysql/

Ja vi essa thread: http://forum.imasters.com.br/index.php?/topic/373265-apache-php-mysql-windows-7/

Nenhuma resolve meu problema.

 

Estou usando EasyPhp 5.3.3 (php 5.3.3 + mysql 5.1.49 + apache 2.2.16).

Me conectei normalmente ao meu mysql usando o programa Mysql Workbench para administrar meu BD.

Velha conhecida configuração: ("localhost:3306", "root" , "")

Funcionando normalmente, porém meu php dá pau quando tento:

 

mysql_connect("localhost:3306","root","");

o ele tenta por uns segundos e depois mostra o erro:

Warning: mysql_connect() [function.mysql-connect]: [2002] Uma tentativa de conexão falhou porque o componente conectado nã (trying to connect via tcp://127.0.0.1:3306) in C:\Arquivos de programas\EasyPHP-5.3.3\www\teste\index.php on line 5

 

Warning: mysql_connect() [function.mysql-connect]: Uma tentativa de conexão falhou porque o componente conectado não respondeu corretamente após um período de tempo ou a conexão estabelecida falhou porque o host conectado não respondeu. in C:\Arquivos de programas\EasyPHP-5.3.3\www\teste\index.php on line 5

 

Fatal error: Maximum execution time of 30 seconds exceeded in C:\Arquivos de programas\EasyPHP-5.3.3\www\teste\index.php on line 6

Meu arquivo index.php é somente:

<?
//ini_set('display_errors', true);
//error_reporting(8191);

mysql_connect("localhost:3306","root","");
?>

Meu arquivo de hosts contém "127.0.0.1 localhost" normalmente.

 

Eu não consigo descobrir de jeito nenhum! Provavelmente é por isso que meu phpmyadmin não está acessando também.

Espero, espero e a tela fica branca.

Unico firewall que tenho é do Windows e está desativado. (ate pq o MySQL Workbench está acessando normalmente!)

Uso o Avira Antivirus, não sei se ele bloqueia alguma coisa, mas creio que não.

 

O que vcs acham que pode ser galera???

 

abraço ai!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não acho que você esteja fazendo certo tente especificar mas a ligação

 

<?
$host = "localhost"; //Servidor do mysql
$user = "root"; //Usuario do banco de dados
$senha = ""; //senha do banco de dados
$db = "meu_db"; //banco de dados

mysql_connect($host, $user, $senha) or die (mysql_error());
mysql_select_db($db) or die (mysql_error()); 
?>
E outra coisa esse seu

<?
//ini_set('display_errors', true);
//error_reporting(8191);

mysql_connect("localhost:3306","root","");
?>
Não precisa usar port :3306 nesse caso depende do servidor localhost que você está usando.

 

EDIT:

Você está criando que sistema?

 

Uma dica para você ter mas segurança... Crie um PHP chamado config.php depois ponha a conexão com o bd nele e esse seu index.php use a base normal de html, antes da primeira tag <html> coloque

<?
include("config.php");  //O destino dele varia de acordo com o diretório das paginas?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não acho que você esteja fazendo certo tente especificar mas a ligação

 

Não precisa usar port :3306 nesse caso depende do servidor localhost que você está usando.

 

Você está criando que sistema?

 

Uma dica para você ter mas segurança...

Valeu pela intenção Vini!! Mas o fato deu parametrizar ou não a chamada do mysql_connect não muda nada. A porta pode ser especificada sim, o default é 3306, mas nem sempre é assim. Nos casos que nao sao, se usa host:post mesmo.

Ali está correto. E tipo, não tem mto a ver qual sistema estou criando, pq isso ai não é meu sistema...é só um indexzinho que criei pra mostrar pra vcs o erro...sem criar mtas reviravoltas com meus codigos, quis mostrar que o erro é aquele ali, direto no mysql_connect. Ja fiz das formas que você indicou e não funciona de jeito nenhum.

Valeu pela ajuda broder!!! abraço

 

Sera que alguem sabe o que danado ta acontecendo?

Compartilhar este post


Link para o post
Compartilhar em outros sites

as vezes os erros estão nas pequenas coisas...

 

o teu PHP esta habilitado para usar shorttags?

 

<? teu php; ?>

???

 

use assim, e faça um teste...

 

<?php teu php; ?>

 

espero que resolva...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá, você já deu uma olhada no suporte do easyphp? Veja se este link lhe ajuda:

 

http://ryan.rawswift.com/2010/03/29/a-connection-attempt-failed-because-the-connected-party-did-not-properly-respond/

 

Mas uma dica, eu não instalaria nem o xampp nem o easy php e sim o Zend Server CE, não tem melhor.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sobre o XAMPP eu ja instalei e deu a mesma coisa!

Sobre a thread do forum, eu ja havia tentado isso...e não se enquadrou...meu arquivo HOSTS está Ok. Comentei ate sobre essa thread no meu primeiro post.

 

Alguem tem outra ideia??

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá amigo,

 

Faça o teste com o seguinte código e mostre aqui o erro que retorna.

 

<?php
  mysql_connect("localhost", "root", "")or die("Erro:".mysql_error());

?>

 

abraço,

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fabio, já tentei, não funciona!

 

H4xor, vamo focar no erro! Depois eu penso na melhor forma de montar meu sistema em produção. Primeiro preciso saber porque meu php não consegue conectar ao meu MySQL.

 

abraço a todos!

Compartilhar este post


Link para o post
Compartilhar em outros sites

tá... tenta o seguinte:

 

minha instalação do MySQL:

C:\Arquivos de programas\MySQL\MySQL Server 5.1\bin

Vá em:

Iniciar > Executar > cmd

 

vá entrando nas pastas, até chegar na tua instalação do MySQL.

cd..
cd MySQL
ao chegar na pasta bin

digite o seguinte:

mysql -u root -p

o prompt, vai lhe pedir a senha

 

veja se aparece:

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 2

Server version: 5.1.31-community MySQL Community Server <GPL>

 

Type 'help'; or '\h' for help. Type '\c' to clear the buffer.

 

o cursor, irá mudar para>

mysql>

Se você conseguir fazer isso, provavelmente o problema é no php, se você não conseguir, é na instalação do MySQL.

Informe oque ocorrer para prosseguirmos.

 

 

pensei numa coisa agora:

(verifique se o teu pacote inicia o MySQL automaticamente.. ou se ele é daqueles chatos, em que toda vez antes de usar, você mesmo, manualmente deve ir lá e startar o serviço)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como falei no inicio, o MySQL Workbench funciona normalmente!!! O MySQL está ok.

 

 

pensei numa coisa agora:

(verifique se o teu pacote inicia o MySQL automaticamente.. ou se ele é daqueles chatos, em que toda vez antes de usar, você mesmo, manualmente deve ir lá e startar o serviço)

 

opa, isso eu não vi. Como vejo isso? abraço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Iniciar > Executar > services.msc

procura o MySQL e veja se está com status iniciado

 

(reinicie o pc, e faça o procedimento novamente, para ver se teu MySQL, está iniciando junto com o Windows)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ah é isso? Não cara...

 

..o MYSQL está Ok! Se ele não estivesse ok, eu não estaria administrando meu banco por nenhuma ferramnta! E como já disse: o WORKBENCH está funcionando!!

Preciso de uma solução pro PHP!! O mysql está ok, rodando e funcional!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara assim fica difícil te ajudar. Se você não seguir os passos, ou não apresentar os erros que aparecerem no decorrer das sugestões. Como vamos identificar o problema, sem informações ?

 

phpinfo.php

<?php
phpinfo();
vê se aparece uma caixinha do mysql

 

apareceu qual erro no teu phpMyAdmin?

 

fora isso, a única coisa que consigo pensar agora, é em reinstalar tudo na mão.

Baixar o php do site do php

Baixar o MySQL do site do mysql

Baixar o Apache do server do Apache

 

e ai, instalar tudo, e configurar manualmente, nunca usei esses pacotes.

 

ainda acho que não está com autostart o teu MySQL.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, dei TODAS as informações em meu PRIMEIRO post.

 

O mysql está instalado, funcionando, rodando, ok! Existe uma outra aplicação usando ele, manipulo tabelas e tudo mais.

Tudo consegue acessar o MySQL, menos qualquer pagina PHP através do "mysql_connect()".

O php está ok, as libs do mysql estão ok. As instalações usadas foram:

EasyPHP - não funcionou

Xampp - não funcionou

 

O php está renderizando perfeitamente, o mysql está funcionando perfeitamente, porém o php não consegue se conectar..o erro eu já mostrei no primeiro post.

Meu phpmyadmin não exibe erros...tenta executar e fica uma tela branca infinitamente ate parar e continuar com a tela branca.

 

Hosts esta ok!

Serviços estao rodando!

Portas estao desbloqueadas! (senao nenhuma aplicação acessava o MYSQL)

Permissões estao dadas!

Ja tentei mudar as portas do mysql e não funcionou!

Ja reinstalei mais de 1x cada pacote (easy, xampp)

Não faço a mínima idéia do que seja...é de outro mundo.

Eu não sou um programador novato em PHP...esta dúvida me parece ser avançada! é algo muito esquisito que nunca vi na minha vida.

No meu trabalho esse projeto funcionou normalmente, mas em casa...existe algum problema que meu PHP não acessa o Mysql.

Formato tudo?? rsrs

 

alguem tem alguma ideia genial ai???

Compartilhar este post


Link para o post
Compartilhar em outros sites

a primeira que faria é olhar o phpinfo();

 

poste aqui a versão do php, apache e o OS

 

poste somente as informaões relevantes do phpinfo(), mais precisamente os trechos do mysql e mysqli.

 

lembrando que a partir do php 5.3 o mysql voltou a ser uma library nativa do php, passando a ser mysqlnd. Não necessita mais da antiga libmysql.dll e toda aquela coisa que se faz nas versões anteriores..

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.