Ir para conteúdo

Arquivado

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

daniel piccoli

Dificuldade com LAMP no Ubuntu 12.04

Recommended Posts

Bom dia pessoal,

 

Tenho o Ubuntu 12.04, rodando com o apache2, mysql e php5. Fiz as instalações via central de programas e a princípio está tudo rodando. Tenho o apache rodando, o mysql eu acesso via terminal e rodo consultas normalmente. O php já fiz o teste com o [phpinfo();] e exibe as informações (também instalei o php5-mysql para usar com o mysql via central de programas). O problema é que eu não consigo rodar consultas no mysql via php e acho que nem a conexão consigo fazer.

Fiz um teste usando o login e senha errados e não retorna a mensagem de erro que coloquei no die. No banco de dados que criei para usar com esse sistema que estou programando, eu passei os grants ao root para evitar erros de permissão (usei como root@'%').

Alguém já enfrentou problema parecido e tem alguma dica? Estou sendo obrigado a usar o windows em máquina virtual para desenvolver o sistema, pois a mesma programação nele funciona. Isso me faz desconfiar da configuração de comunicação entre php + mysql.

 

Agradeço desde já.

Compartilhar este post


Link para o post
Compartilhar em outros sites

qual mensagem de erro o MySQL retorna pro PHP?

 

Oi Beraldo,

pois é, esse é o mais estranho. Não retorna mensagem de erro.

Já tentei o mysql_error($conexao) e não retorna erro. Também usei a variável do comando sql e não retorna erro no php.

Compartilhar este post


Link para o post
Compartilhar em outros sites

mas se cai no die(), tem que retornar algum erro.

 

como está executando?

 

tente algo assim:

mysql_connect( 'server', 'user', 'pass' ) or exit( mysql_error() );
echo "OK";

 

qual é o resultado?

 

opa... demorei pra testar, pois tive que atender a porta aqui...

bom, fiz o teste e o retorno foi o OK. A conexão foi estabelecida. Aproveitei e setei o banco de dados também e não deu erro.

criei esse sql para rodar:

$query= "select * from tb_funcionarios where login = 'administrador' and senha = 'admin1234'"

criei essa confirmação bem simples só pra testar agora:

 

if(!$result = mysql_query($query,$conexao))

{

echo "<br>Erro<br>";

exit();

}

else

{

if(mysql_num_rows($result) = 1){

echo "<br>O usuário foi autenticado.<br>";

}

 

Pra surpresa, até mesmo os OKs de conexão e set do BD não retornaram. Será que é sintaxe, pode acontecer de para o windows (usando o wamp server) funcionar de um jeito e para o Linux de outro? Estou começando a usar o linux full time no meu pc, por isso ainda há dúvidas...hehehe

Compartilhar este post


Link para o post
Compartilhar em outros sites

não há diferenças de sintaxe para um SO ou outro, pois a linguagem é a mesma

 

coloque isto no topo do script, pra habilitar todas as mensagens de erro:

 

ini_set( 'display_errors', 1 );
error_reporting( E_ALL );

 

execute de novo o script e poste o resultados

Compartilhar este post


Link para o post
Compartilhar em outros sites

opa... demorei pra testar, pois tive que atender a porta aqui...

bom, fiz o teste e o retorno foi o OK. A conexão foi estabelecida. Aproveitei e setei o banco de dados também e não deu erro.

criei esse sql para rodar:

$query= "select * from tb_funcionarios where login = 'administrador' and senha = 'admin1234'"

criei essa confirmação bem simples só pra testar agora:

 

if(!$result = mysql_query($query,$conexao))

{

echo "<br>Erro<br>";

exit();

}

else

{

if(mysql_num_rows($result) = 1){

echo "<br>O usuário foi autenticado.<br>";

}

 

Pra surpresa, até mesmo os OKs de conexão e set do BD não retornaram. Será que é sintaxe, pode acontecer de para o windows (usando o wamp server) funcionar de um jeito e para o Linux de outro? Estou começando a usar o linux full time no meu pc, por isso ainda há dúvidas...hehehe

 

opa Beraldo,

 

cara, valeu mesmo pela força. a gente falando sobre esse erro e com as sugestões de testes, acho que encontrei o erro...

eu acredito que esteja em um encadeamento de if que fiz no php... testei com essa forma abaixo e rodou direitinho:

 

if(!$result = mysql_query($query,$conexao))

{

echo "<br>Erro de Sistema<br>";

exit();

}

else

{

if(mysql_num_rows($result) == 1){

echo "<br>O usuário foi localizado<br>";

exit();

}

}

 

devo ter me perdido em fechar chaves ou algo do tipo...

valeu pela força e qualquer coisa estamos aí...

abração

 

não há diferenças de sintaxe para um SO ou outro, pois a linguagem é a mesma

 

coloque isto no topo do script, pra habilitar todas as mensagens de erro:

 

ini_set( 'display_errors', 1 );
error_reporting( E_ALL );

 

execute de novo o script e poste o resultados

 

opa, não tinha visto essa tua resposta.

pior que foi erro meu mesmo (encadeei errado os if para teste de retorno e rodagem da query no php), a dúvida é pq roda no windows (wamp server 2.21) e não rodou no linux. tenho que me puxar mais no esquema..hehehe

obrigado pela ajuda...

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.