Autenticação PHP e MySQL
Olá amigos do Fórum, tenho um script de Autenticação de Usuário em PHP e MySQL que uso a anos, em vários sites, mas hoje me deparei com essa dificuldade, o script não Loga de jeito nenhum nos servidores da Locaweb.
Já teste em vários outros servidores, inclusive aqui no meu local, e funciona normal, mas na Locaweb não funciona!
Na verdade o login até passa, mas quando é redirecionado para a página restrita acaba retornando pro login.php novamente.
Então o Login passa direitinho mas parece que não grava a seção pra manter o usuário logado e acaba retornando pro login.php.
Segue os códigos-fontes.
conecta.php
<?
//DADOS PARA CONEXÃO
$servidor = "localhost"; //SERVIDOR
$bd = "localhost"; //DATABASE
$usuario = "root"; //USUÁRIO
$senha = ""; //SENHA
//CONECTANDO
$conn = @mysql_connect($servidor, $usuario, $senha)
or die("ERRO NA CONEXÃO");
//SELECIONA O DATABASE A SER UTILIZADO
$db = @mysql_select_db($bd, $conn)
or die("ERRO NA SELEÇÃO DO DATABASE");
?>
login.php
<html>
<head>
<title>ADMINISTRADOR</title>
<body>
<form action="autentica.php" method="post" name="frmAutentica" target="_parent">
<table width="32%" border="0" align="center" cellspacing="0" cellpading="0">
<tr bgcolor="#252d3a">
<td colspan="2" bgcolor="#c31c52"><p align="center"><font color="#FFFFFF"><strong>ADMINISTRADOR</strong></font></p></td>
</tr>
<tr>
<td width="10%" height="12"><p align="justify"><strong>USUÁRIO:</strong></p></td>
<td width="40%"><input name="admin" type="text" id="admin" size="13"></td>
</tr>
<tr>
<td width="10%"><p align="justify"><strong>SENHA:</strong></p></td>
<td width="40%"><input name="senha" type="password" id="senha" size="13"></td>
</tr>
<tr>
<td align="center"> </td>
<td><input type="submit" name="btnLogar" value="Logar no sistema >>"></td>
</tr>
</table>
</form>
</body>
</html>
autentica.php
<?
//CONECTA COM O BANCO DE DADOS
require_once("conecta.php");
//RECEBE OS DADOS DO FORMULÁRIO
$usuario = $_POST[admin];
$senha = $_POST[senha];
//VERIFICA
$sql = mysql_query("
SELECT A.ID_USUARIO, A.NOME_USUARIO FROM tb_admin A
WHERE A.USUARIO_ADM = '$usuario'
AND A.SENHA_ADM = '$senha'") or die("ERRO NO COMANDO SQL");
//LINHAS AFETADAS PELA CONSULTA
$row = mysql_num_rows($sql);
//VERIFICA SE RETORNOU ALGO
if($row == 0) echo "<p class=\"bar01\" style=\"color: #ff0000; font-size: 14px;\">Usuário ou Senha inválidos<br><strong>Tente Novamente!</strong></p>";
else {
//PEGA OS DADOS
$id = mysql_result($sql, 0, "ID_USUARIO");
$nome = mysql_result($sql, 0, "NOME_USUARIO");
//INICIALIZA A SESSÃO
session_start();
//GRAVA AS VARIÁVEIS NA SESSÃO
$_SESSION[id] = $id;
$_SESSION[nome] = $nome;
//REDIRECIONA PARA A PÁGINA QUE VAI EXIBIR OS PRODUTOS
Header("Location: resultado.php");
}//FECHA ELSE
?>
resultado.php
<?
//VERIFICA SE A SESSÃO ESTÁ ATIVA
require_once("verifica.php");
?>
<html>
<head>
<title>ADMINISTRADOR</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>SEJA BEM VINDO
</body>
</html>
verifica.php
<?
//INICIALIZA A SESSÃO
session_start();
//SE NÃO TIVER VARIÁVEIS REGISTRADAS
//RETORNA PARA A TELA DE LOGIN
if( (!isset($_SESSION[id_usuario])) AND (!isset($_SESSION[nome_usuario])) )
Header("Location: login.php");
?>Discussão (4)
Carregando comentários...