Furian 0 Denunciar post Postado Março 1, 2008 Boa tarde... sou novo no fórum e novo também nessa área de desenvolvimento, estou desenvolvendo um site e nele tenho um formulário para cadastro de usuários que salva as informações em um banco de dados, após efetuado o cadastro os usuários poderão fazer login para utilizar outros serviços desse site, porém, após cadastrados não estou conseguindo fazer a conexão do formulário de login para que ele busque as informações no banco de dados e realize as críticas para validar ou não o login. Vou postar aqui algumas informações que devem servir para facilitar se alguem puder me ajudar... O banco de dados possui 2 tabelas, uma é para cadastro de Usuários comuns e a outra para Revendedores, a conexão e a gravação nessas tabelas está funcionando perfeitamente... para que seja efetuado o login estou utilizando dois campos dessas tabelas o campo e-mail e o campo senha, existe um campo para cada tabela, no formulário de login os usuários devem digitar o e-mail como login, a senha e escolher em um select como querem se logar, se como usuários ou como revendedores. Segue abaixo o código que estou utilizando no fomulário de login: <?php @session_start(); include_once("ControlaLogin.php"); if ( (!session_is_registered("usu")) and (!session_is_registered("senh")) ) { ?> <table border="0" align="center" background=""> <tr> <td align="center"><b>EFETUAR LOGIN</b></td> </tr> <tr> <td height="20" align="center" valign="top"> <form name="formefetualogin" method="post" action="logar.php"> <tr><td align="center">Login:</td></tr> <tr><td align="center"><input type="text" name="usu"></td></tr> <tr><td align="center">Senha:</td></tr> <tr><td align="center"><input type="password" name="senh"></td></tr> <tr><td align="center">Tipo:</td></tr> <tr><td align="center"><select name="tip"> <option style="text-align:center;" value="0"></option> <option style="text-align:center;" value="1">USUÁRIO</option> <option style="text-align:center;" value="2">REVENDEDOR</option> </select></td></tr> <tr><td align="center"><input type="image" type="submit" src="botaologin.jpg"></td></tr> </form></td> </tr> </table> <?php } else { print "<div align='center'><i><b>" . $_SESSION['usu'] . "</b></i>"; print "<br><a href='logout.php'>" . 'Sair' . "</a></div>"; } ?> Vou colocar aqui também o conteúdo da página logar.php que é executada após o clique no botão para efetuar login: <?php include_once("ControlaLogin.php"); $login = $_POST['usu']; $senha = MD5($_POST['senh']); $tipo = $_POST['tip']; if ( (!empty($login)) && (!empty($senha)) ) { $controlaLogin = new ControlaLogin(); if ($controlaLogin->logar($login,$senha,$tipo)) { if ($_SESSION['tip'] == 1) { header('location:index.php?page=conteudo.php'); } else { if ($_SESSION['tip'] == 2) { header('location:index.php?page=conteudo.php'); } header('location:index.php?page=errologin.php'); } } } else { header('location:index.php?page=errologin.php'); } ?> E também o conteúdo da página controlalogin.php que faz a verificação no banco de dados das informações digitadas através da conectabd.php.... <?php include_once("ConectaBD.php"); class ControlaLogin extends ConectaMySql { function ControlaLogin () { $this-> ConectaMySql(); } function logar($login,$senha,$tipo) { if (strlen($tipo)==2) { $sql= "select * from USUARIOS WHERE USU_EMAIL= '" . $login . "' and USU_SENHA= '" . $senha . "'"; $res= $this->executaQueryRows($sql); if (count($res)>0) { $_SESSION['senh'] = $senha; $_SESSION['usu'] = $login; return true; } else { return false; } } if (strlen($tipo)==1) { $sql= "select * from REVENDEDORES WHERE REV_EMAIL= '" . $login . "' and REV_SENHA= '" . $senha . "'"; $res= $this->executaQueryRows($sql); if (count($res)>0) { $_SESSION['senh'] = $senha; $_SESSION['usu'] = $login; return true; } else { return false; } } } } ?> Agradeço a todos, um grande abraço... até... Compartilhar este post Link para o post Compartilhar em outros sites
jonata 0 Denunciar post Postado Março 1, 2008 um exemplo: $loguin=$_POST['loguin']; $senha=$_POST['senha']; 1ºfaz conexão com bd $sql=mysql_query(SELECT loguin, senha FROM tabela WHERE loguin='$loguin' AND senha='$senha'); $result=mysql_num_rows($sql); if($result=='0'){echo "nada";} if($result!='0'){echo "senha aceita!";} Compartilhar este post Link para o post Compartilhar em outros sites
Furian 0 Denunciar post Postado Março 1, 2008 Obrigado Jonata, entendi o que você fez só que existe um porém, eu preciso verificar antes em qual das duas tabelas ele irá procurar o login e a senha... Neste caso que você me passou ele estaria procurando na tabela login no banco de dados, mas eu possuo duas tabelas, uma é a Usuários e a outra Revendedores, eu tentei fazer isso utilizando um campo select no formulário de login com 3 campos, um "0" (não selecionado) o outro "1" que seriam os usuários e o "2" os revendedores, e após isso utilizei uma condição para verificar qual dos valores seria selecionado pelo utilizador do site para depois buscar na tabela respectiva e verificar se o login e a senha estão corretos, só que não está funcionando, no caso se eu deixar todos os valores do formulário de login em branco a crítica funciona e direciona o usuário para a página errologin.php, mas se eu preencher qualquer um dos campos ela leva para uma página em branco, não apresenta erro nenhum, mas também não funciona o login... Agradeço a atenção dedicada, um grande abraço... até... Compartilhar este post Link para o post Compartilhar em outros sites
Furian 0 Denunciar post Postado Março 2, 2008 Estou aguardando respostas, se alguem puder me ajudar ai... só falta resolver esse problema pra terminar o site vlw... aceito outras sugestões de como poderia fazer, grande abraço a todos... até... http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites