Escolar Documentos
Profissional Documentos
Cultura Documentos
Cookies e Sesses
Protocolo HTTP
http://marx.vanderlinden.com.br/
Protocolo HTTP
Cookies
Cookies
Cookies
Cookies
Cookies
Usos de Cookies
setcookie
10
setcookie
11
pagina1.php
<?php
$b = setcookie('nome',
'Fbrica de Software');
?>
<html>
<head>
<title>Cookies, pgina 1</title>
</head>
<body><?php
if($b)
echo "Cookie enviado com sucesso";
else
echo "Erro ao enviar o cookie.";
?></body>
http://marx.vanderlinden.com.br/
</html>
12
Sada
<html>
<head>
<title>Cookies, pgina 1</title>
</head>
<body>Cookie enviado com sucesso</body>
</html>
15
$_COOKIE
16
pagina2.php
<html>
<head>
<title>Cookies, pgina 2</title>
</head>
<body>
<?php
if(isset($_COOKIE['nome']))
echo "Seu nome $_COOKIE[nome].";
else
echo "Eu no sei o seu nome.";
?>
</body></html>
17
Sada
<html>
<head>
<title>Cookies, pgina 2</title>
</head>
<body>
Seu nome Fabrica de Software
Houten.</body></html>
20
setcookie("valor[nome]", "Bill");
setcookie("valor[sobrenome]", "Gates");
setcookie("valor[empresa]", "Microsoft");
21
if (isset($_COOKIE['valor'])) {
foreach (
$_COOKIE['valor'] as $indice => $valor
)
echo "$indice: $valor <br>\n";
}
nome: Bill <br>
sobrenome: Gates <br>
empresa: Microsoft <br>
22
Tempo de expirao
Tempo de expirao
setcookie(
'login','milhouse', time() + 60*60
setcookie(
'login','krusty', time() + 60*60*24
);
);
setcookie(
'login','flanders',
http://marx.vanderlinden.com.br/
mktime(12,0,0, 10,12,2010)
);
24
25
setcookie('login','burns', 0, '/' );
www.exemplo.com
www.exemplo.com/dir1/springfield
setcookie('login','barney',
time()+60*60, '/moe' );
www.exemplo.com/moe
www.exemplo.com/moe/tavern
26
www.exemplo.com meusite.exemplo.com
27
setcookie('login','burns', 0,
'/', '.exemplo.com' );
www.exemplo.com
www.exemplo.com/dir1/springfield
meusite.exemplo.com/shelbyville
28
Excluindo um cookie
Excluindo:
setcookie('login','', 0, '/' );
29
30
Sesses
31
Sesses
session_start()
33
$_SESSION
34
exemplo.php
<?php session_start(); ?>
<html>
<head>
<title>Sesses</title>
</head>
<body>
<?php
if(!isset($_SESSION['visitas']))
$_SESSION['visitas'] = 0;
?>
Esta a sua visita nmero
<?php echo $_SESSION['visitas']++ ?>.
</body>
</html>
http://marx.vanderlinden.com.br/
35
session_set_cookie_params
session_name
41
session_id
Sintaxe:
session_id()
42
session_regenerate_id
Sintaxe:
session_regenerate_id()
Configurando sesses
Por padro:
ini_set
Sintaxe:
ini_set($varivel, $novovalor)
45
session.gc_maxlifetime
ini_set('session.gc_maxlifetime', 600);
session_start( );
46
session.gc_probability
Padro: 1
Tambm deve ser modificada antes de
session_start
ini_set('session.gc_probability', 100);
session_start( );
47
Segurana
Problema de segurana:
48
Funes de Hash
49
Funes de Hash
50
md5
0c29bf0f928decfbf91070fa4affb0c4 <br>
1f683fe1cd7977cdd056ddc25d6bd8f8 <br>
51
$_SERVER
52
$_SERVER
Exemplos:
53
$_SERVER
$keys = array(
'PHP_SELF', 'SERVER_ADDR',
'SERVER_NAME', 'HTTP_USER_AGENT',
'REMOTE_ADDR',
);
foreach($keys as $k)
echo "$k: $_SERVER[$k]<br>\n";
PHP_SELF: /exemplo/exemplo.php<br>
SERVER_ADDR: 127.0.0.1<br>
SERVER_NAME: localhost<br>
HTTP_USER_AGENT: Mozilla/5.0 (X11; U; Linux
i686; pt-BR; rv:1.9.0.1) Gecko/2008072820
Firefox/3.0.1<br>http://marx.vanderlinden.com.br/
54
REMOTE_ADDR: 127.0.0.1<br>
55
Sesso Segura
<html>
<head><title>Sesses</title></head>
<body>
<?php echo $msg ?>
</body>
</html>
56
Sada
Primeira execuo:
OK!<br>
Continuando sesso
Execues seguintes:
Continuando sesso
Tentativa de ataque: