Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Fala galera tudo certo?
Bem vou postar um script que criei esses dias e achei legal.. login com cookies isso é bom para você que quer criar um sistema onde o kra quando entrar novamente em sua pagina ele já entre logado ;) diferente de sessions que ao fechar o navegador ele exclui a sessão ;)
Bem eu criei aqui da seguinte maneira. quando você tentar acessar algum link e você não tiver logado vai aparecer o formulario para login assim que você fazer o login ele vai volta para a mesma pagina que você estava ;) show né
Bem lá vai
proteger.php
<?if($_REQUEST){ foreach($_REQUEST as $chave => $valor){$$chave = $valor;} } # recupera valores de post, get e cookies$expira = 30; # aqui é contado como minutos então nessa caso temos 30 minutosif(isset($deslog)){ # verifica se a variavel deslog existe se sim faça $_COOKIE = array(); # elemina todos os cookies da pagina setcookie("login","", time() - 1); # exclui o cookie}# função retirada do Fabyo;)# :::::::::::::::::::::::::::::::::::::::::function anti_sql($txt){ $txt = get_magic_quotes_gpc() == 0 ? addslashes($txt) : $txt; return preg_replace("@(--|\#|\*|;|=)@s", "", $txt); }# ::::::::::::::::::::::::::::::::::::::::::function logar($user,$pass){ $sql = mysql_query("select * from usuario where upper(usuario) = '".strtoupper($user)."' and senha = md5('$pass')"); # verifico se há algum usuario e a senha no banco de dados if(mysql_num_rows($sql) > 0){ # se me retorna maior que 0 quer dizer que existe return mysql_fetch_array($sql); # aproveita para retorna os dados do usuario como nome ... tec.. }else{ return false; # dados invalidos }}if(empty($login)){ # se o cookeie for vazio faça $usuario = anti_sql($usuario); # tira mals intenções dos fulanos $senha = anti_sql($senha); # tira mals intenções de fulanos $user["dados"] = logar($usuario,$senha); # envia os dados para a função responsavel de fazer as verificações no bando de dados if($user["dados"]){ # caso retorne verdadeido $logado = true; # atribuo a variavel $logado como verdadeiro setcookie("login", serialize(array("usuario" => $usuario, "senha" => $senha)), time() + (60 * $expira)); # cria a sessão }else{ $logado = false; # caso retorne false atribui o valor false para a variavel } }else{ # caso a sessão não seja vazio faça $info["login"] = unserialize(stripslashes($login)); # recupera dados do cookie $info["login"]["usuario"] = anti_sql($info["login"]["usuario"]); # tira mals intenções dos fulanos $info["login"]["senha"] = anti_sql($info["login"]["senha"]); # tira mals intenções dos fulanos $user["dados"] = logar($info["login"]["usuario"],$info["login"]["senha"]); # envia os dados para a função responsavel de fazer as verificações no bando de dados if($user["dados"]){ # caso retorne verdadeido $logado = true; # atribuo a variavel $logado como verdadeiro setcookie("login", serialize(array("usuario" => $info["login"]["usuario"], "senha" => $info["login"]["senha"])), time() + (60 * $expira)); # renoca a sessão caso o kra esteja ativo. }else{ $logado = false; # caso retorne false atribui o valor false para a variavel } }if(!$logado){ # caso a variavel logado retorna falso faça require("logar.php"); # inclue o logar.php exit; # para a execução aqui.}?>
logar.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "[http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><title>Logar</title></head><style type="text/css"> / Login /#login #formulario{ width: 400px; background: #F1F3F5; border: 1px solid #CCCCCC; position: relative; margin: 0 50% 0 -200px; top: 50px; left: 50%; padding: 10px; clear: both;}#login #formulario #esquerdo{ float:left; width: 150px; text-align:center;}#login #formulario #esquerdo h1{ font: 10px Arial, Helvetica, sans-serif; text-align: left; color:#666666;}#login #formulario p{ margin: 10px 0 0 0;}#login #formulario #direito h1{ color: #009933; font-family: Arial, Helvetica, sans-serif; font-size: 20px;}#login #formulario #direito h2{ font: bold 11px Arial, Helvetica, sans-serif; color: #666666; padding: 10px; background-color: #E3E4E6; border: 1px solid #CCCCCC; margin: 10px 0 0 152px;}#login #formulario #direito h2 input{ font: 12px Arial, Helvetica, sans-serif; color:#666666; border: 1px solid #CCCCCC;}#login #formulario #direito h2 #enviar{ font: 12px Arial, Helvetica, sans-serif; color:#666666; background-color: #E6E6E6; border: 1px solid #CCCCCC;}/ Fim login /</style><body><div id="login"> <div id="formulario"> <form action="" method="post" name="login"> <div id="esquerdo"> <h1> Bem-vindo ao Painel de Controle!<p /> Digite seu nome de usuário e senha para acessar o painel administrativo. </h1> </div> <div id="direito"> <h1>Login</h1> <h2> Nome do úsuario:<br /> <input name="usuario" id="usuario" type="text" value="" /><p /> Senha:<br /> <input name="senha" id="senha" type="password" /><p /> <input id="enviar" name="Enviar" value="Enviar" type="submit"> </h2> </div> </form> </div></div></body></html>
Ai só adicionar no começo dos arquivos que você quer proteger o seguinte comando..
<?include("proteger.php");?>
E pronto funfando
Espero que seja util para a galera ai ;)
Carregando comentários...