quinta-feira, 24 de maio de 2012

Página em PHP que faz visualizar uma segunda página caso o usuário esteja logado,utilizando $_COOKIE


<?php 2 //Atribui o conteúdo do campo tentativas a variável cont 3 $cont = $_POST['tentativas']; 4 //se cont for vazio, atribua 1 ao mesmo 5 if(empty($cont)) 6 $cont=1; 7 else 8 //do contrário, some 1 a cont 9 ++$cont; 10 //se o conteúdo do post sair for sim, faça 11 if($_POST['sair']=='sim') 12 { 13 /*zere os atributos de login e senha e ainda coloque um tempo 14 inválido*/ 15 setcookie('login','',time()-3600); 16 setcookie('senha','',time()-3600); 17 //zere cont 18 $cont=0; 19 //Atualize a página 20 echo '<script type="text/javascript">location.replace("index.php"); 21 </script>'; 22 } 23 //se os campos login e senha forem diferentes de vazio, faça 24 if(!empty($_POST['login']) && !empty($_POST['senha'])) 25 { 26 //se cont tiver valor 3 faça 27 if($cont>3) 28 { 29 /*verifique se o número digitado pelo usuário é o mesmo que o número 30 fornecido*/ 31 if(($_POST['numeros'])==($_POST['numeros2'])) 32 { 33 //caso positivo vá para a função sem argumentos de nome verifica 34 verifica(); 35 } 36 //do contrário, exiba um alerta avisando o erro 37 else 38 echo '<script type="text/javascript"> 39 alert("Digite o número corretamente"); </script>'; 40 } 41 //caso cont não seja maior do que 3, só chame a função verifica 42 else 43 { 44 verifica(); 45 } 46 } 47 /*do contrário se um dos campos estiver vazio e só um deles estiver 48 preenchido, exiba um alerta alertando sobre o erro*/ 49 else if(!empty($_POST['login']) || !empty($_POST['senha'])) 50 echo '<script type="text/javascript"> 51 alert("Ambos os campos devem estar preenchidos!"); </script>'; 52 53 //função verifica sem argumentos 54 function verifica() 55 { 56 /*retire, se houver, os espaços em branco nas extremidades dos campos 57 login e senha e atribua as variáveis login e senha, respectivamente*/ 58 $login = trim($_POST['login']); 59 $senha = trim($_POST['senha']); 60 //torne todos os caracteres do login em minúsculo 61 $login = strtolower($login); 62 //Se o login for rpg e senha for 123, faça 63 if(($login=='rpg') && ($senha=='123')) 64 { 65 /*crie cookies de nome login e senha e atribua os valores das variáveis 66 login e senha; ainda coloque um tempo para que no caso do usuário saía 67 da página o cookie não expire*/ 68 setcookie('login', $login,time()+311004000); 69 setcookie('senha', $senha,time()+311004000); 70 //Atualize a página 71 echo '<script type="text/javascript"> 72 location.replace("index.php");</script>'; 73 } 74 //do contrário informe que o login ou senha se encontra errado 75 else{ 76 echo '<script type="text/javascript"> 77 alert("Login e/ou senha inválidos!"); </script>'; 78 } 79 } 80 81 //Cria uma variável de nome números e atribui valor vazio a mesma 82 $numeros=""; 83 //cria um loop do ind 0 até 5, sempre incrementando ind em um a cada laço 84 for($ind=0; $ind<6; $ind++) 85 { 86 //gera um número aletatório entre 0 e 9 e atribui a variável numero 87 $numero=rand(0,9); 88 //concatena o valor de numero a variável numeros 89 $numeros.=$numero; 90 } 91 ?> 92 93 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 94 "http://www.w3.org/TR/xhtml/DTD/xhtml1-transitional.dtd"> 95 <html xmls="http://ww.w3.org/1999/xhtml" xml:lang="pt-br" lang="pt-br"> 96 <head> 97 <title>Trabalhando com PHP</title> 98 <meta http-equiv="Content-Type" content="text/html; charset=isso-8859-1" /> 99 <style type="text/css"> 100 body{ 101 background-color:#2089b6; 102 } 103 104 a{ 105 color: black; 106 font-size:40px; 107 } 108 </style> 109 </head> 110 <body> 111 <center> 112 <table> 113 <tr> 114 <th> 115 <?php 116 //se os cookies login e senha não forem vazios, faça 117 if($_COOKIE['login']=="rpg" && $_COOKIE['senha']=="123") 118 { 119 //exiba na tela 120 echo '<h2>Você estar logado, desta forma poderá acessar o link da página</h2> 121 <form action="index.php" method="post"> 122 <input type=hidden id="oculto" name="sair" value="sim" /> 123 <input type=submit value="Sair" style="margin:1em; padding:0 20px 0 20px;"> 124 </form> 125 <a href="admin.php">Link</a> 126 </th>'; 127 } 128 //do contrário, faça 129 else{ 130 //exiba na tela 131 echo '<form action="index.php" method="post"> 132 <p style="margin: 0 0 0.5em 0;">Login: 133 <input type="text" name="login" size="13"></p> 134 <p style="margin: 0 0 0.5em 0;">Senha: 135 <input type="password" name="senha" size="13"></p> 136 <input type="hidden" name="tentativas" value="'.$cont.'" >'; 137 //se a variável cont for maior do que 3, faça 138 if($cont>3) 139 { 140 //exiba o sistema de numeração; isso evita ataques de força 141 echo '<p style="margin: 0 0 0.5em 0;">'.$numeros.': 142 <input type="text" name="numeros" size="13"></p> 143 <input type="hidden" id="oculto" name="numeros2" value="'.$numeros.'" />'; 144 } 145 echo '<input type=submit value="Entrar"> 146 </form> 147 <a href="admin.php">Link</a>'; 148 149 } 150 ?> 151 </th> 152 </tr> 153 </table> 154 LOGIN: RPG 155 SENHA: 123 156 </center> 157 </body> 158 </html>
 

Nenhum comentário:

Postar um comentário