Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Pessoal,
Sou iniciante em PHP e estou precisando urgentemente de uma ajuda. Estou criando um site para a empresa em que trabalho, mas preciso restringir o acesso às páginas. Criei um sisteminha que o usuário se cadastra e faz o login. Quando faz o login o sistema gera um cookie que fará a autenticação do usuário para acessar às páginas. Mas não estou conseguindo fechar o acesso às páginas. Já consegui gerar o cookie. Abaixo segue o código.
<?ob_start();include "config.php"; // váriáveis da página de configuração da conexão.$db = mysql_connect ($host, $login_db, $senha_db); //conecta ao MySQL$basedados = mysql_select_db($database); //seleciona o db escolhido$confirmacao = mysql_query(("SELECT * FROM $tabela WHERE email = '$email' AND password = '$password'"), $db);$contagem = mysql_num_rows($confirmacao) or die(mysql_error()); //traz o resultado da pesquisa acimaif( $contagem == 1 ) { $email = $_POST['email']; $password = $_POST['password']; setcookie('email', $email, time()+1*24*3600); //grava o cookie com o email setcookie('password', $password, time()+1*24*3600); //grava cookie com o password echo "<meta HTTP-EQUIV='Refresh' CONTENT='0;URL=legal.php'>"; //se tudo estiver ok ele faz o login } else { echo "email or password is not valid. Please try again. <a href=java script:history.go(-1)>Click here to go back to the previous page </a>"; }ob_end_flush();?>
O problema é que agora não consigo proteger o acesso às páginas, pq ele fala que o login não foi feito, com a mensagem que eu programei.. Tentei tirar o php do início e do final do código das páginas e colocar somente:
<?require "access.php"?>
Aonde o arquivo access.php está da seguinte forma:
<?include "config.php"; //carrega o arquivo de configuração$email = $HTTP_COOKIE_VARS["email"]; //pega o cookie email gravado antes.$password = $HTTP_COOKIE_VARS["password"]; //pega o cookie password gravado antes.$db = mysql_connect ($host, $login_db, $senha_db); //conecta ao MySQL.$basedados = mysql_select_db ($database); //conecta a db.$confirmacao = mysql_query (("SELECT * FROM $tabela WHERE email = '$email' AND password = '$password'"), $db); //verifica se os cookies estão ok.$contagem = mysql_num_rows ($confirmacao); //resultado da pesquisa acima.?>
Algupem pode me ajudar o mais urgente possível, por favor?? Preciso mesmo de ajuda!
Obrigado,
Victor
Carregando comentários...