Daeron 0 Denunciar post Postado Fevereiro 22, 2007 Galera, depois de dois dias queimando a mufa pra tentar resolver isso venho pedir a ajuda de vocês!! Eu resolvi criar um script pra fazer um login no site novo que estou criando, já ta praticamente pronto mas tá preso por causa disso... Na verdade, o usuário digitaria username e senha e uma consulta ao bd mostraria se o usuário é registrado ou não, se for retorna pra inicio com o login feito, se não retorna com uma mensagem de erro. O problema é que eu não estou conseguindo fazer a consulta no bd, então ele sempre retorna como usuário invalido. Vou mostrar como está o código: login.html <html><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><title>Página de Login</title></head><body><form action="login.php" method="post"> <p align="left">Usuário: <input type="text" name="username" size="15"></p> <p align="left">Senha: <input type="password" name="senha" size="10"></p> <p align="left"><input type="submit" value="Enviar" name="enviar"></p></form></body></html> login.php <?php// obtém valores digitados $username = $_POST["username"]; $senha = $_POST["senha"];// acesso ao banco de dados include "conecta_mysql.inc"; $resultado = mysql_query ("select * from usuarios where username='$username'"); $linhas = mysql_num_rows ($resultado); if($linhas==0) //testa se a consulta retornou algum registro { echo "<html><body>"; echo "<p aling=\"center\">Usuário não encontrado!</p>"; echo "<p align=\"center\"><a href=\"login.html\">Voltar</a></p>"; echo "</body></html>"; } else { if ($senha != mysql_result ($resultado, 0, "senha")) // confere a senha { echo "<html><body>"; echo "<p aling=\"center\">A senha está incorreta!</p>"; echo "<p align=\"center\"><a href=\"login.html\">Voltar</a></p>"; echo "</body></html>"; } else // user e pw certos, criar cookies { setcookie("nome_usuario", $username); setcookie("senha_usuario", $senha); // direciona para a pagina inicial de quem está cadastrado } } mysql_close ($conexao);?> arquivo conecta_mysql.inc <?php$conexao = mysql_connect ("#host", "#usuáriot", "#senha");mysql_select_db ("#nome_do_db");?> o código usado pra gerar a tabela mysql CREATE TABLE usuarios ( username varchar(10) NOT NULL, senha varchar(6) NOT NULL, nome varchar(80) NOT NULL, email varchar(80) NOT NULL, cidade varchar(40) NOT NULL, estado char(2) NOT NULL, primary key(username)) ENGINE = MYISAM; Já lí e re-lí tudo várias vezes, cheguei a refazer do zero o código completo mas sempre digito o usuário e senha e quando envio ele retorna como invalido. Já testei em localhost usando php 5, mysql 5.0.27, apache 2.2 e phpmyadmin 2.8.1 e não funcionou. Já testei no meu host na internet com php 4, mysql 5.0.20, apache 1.3 e phpmyadmin 2.6.4 e também não funcionou... Por favor, me dêem uma luz... Abraços Compartilhar este post Link para o post Compartilhar em outros sites
Otata 4 Denunciar post Postado Fevereiro 22, 2007 eae cara...oh eu executei o seu codigo aqui e rolou cara...inseri um usuario no banco e ele criou o cookie...Abraço! Compartilhar este post Link para o post Compartilhar em outros sites
Daeron 0 Denunciar post Postado Fevereiro 23, 2007 O problema não está sendo criar o cookie, é justamente na hora de logar! Ele por algum motivo que desconheço não pega as informações no banco de dados ou pega errado, pois sempre retorna a mensagem de usuário não encontrado...Eu queria saber se tem como resolver isso... Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Fevereiro 23, 2007 Tente adicionar o or die, para ver se é retornado algum erro: $resultado = mysql_query ("select * from usuarios where username='$username'") or die (mysql_error()); []'s Compartilhar este post Link para o post Compartilhar em outros sites
ScornInPC 1 Denunciar post Postado Fevereiro 24, 2007 é, seu script esta corretinho, se estiver ocorrendo algum erro, pode ser configurações do servidor. Realmente naum v nada de errado.outra coisa que pode ser usado como "debug", é usar um front end do mysql, tal como o phpmyadmin, mydb studio, ou algo parecido, e rodar a query que esta tentando executar select * from usuarios where username='scorninpc'algo assim, as vezes nos confundimos mesmo, escrevemos errado alguma coisa, e naum percebemos memo, isso eh normal. Eu pelo menos, sempre faço isso quando começa a ocorrer erros de query Compartilhar este post Link para o post Compartilhar em outros sites
Daeron 0 Denunciar post Postado Fevereiro 24, 2007 Galera valeu mesmo pela ajuda! meu sistema de login tá pronto e aproveitei o script do fabyo pra criar o registro mais simplificado!Agora to colocando criptografia nas senhas pra não ter problemas nos cookies e assim que estiver tudo pronto posto o projeto completo no laboratório!Valeu pela ajuda!! Compartilhar este post Link para o post Compartilhar em outros sites