O documento discute o uso de sessões, cookies e cabeçalhos HTTP em PHP para armazenar informações do usuário no servidor e navegador. Sessões permitem armazenar dados no servidor através de um ID exclusivo, enquanto cookies armazenam pequenas quantidades de dados no navegador do usuário. Cabeçalhos HTTP podem ser usados para redirecionamento, autenticação básica e geração de CAPTCHAs.
18. Contadores (session e cookie) <?php session_start(); $_SESSION [ 'contador_session' ]++; setcookie( 'contador_cookie' , $_COOKIE [ 'contador_cookie' ] + 1 ); ?> < html > < head > < title > CEFET-PI PHB </ title > </ head > < body > < p > Contador Session: <?php echo $_SESSION [ 'contador_session' ] ?> < p /> < p > Contador Cookie: <?php echo $_COOKIE [ 'contador_cookie' ] + 1 ?> < p /> <?php print_r( $_COOKIE ); ?> </ body > </ html >
19. Inserindo itens em um array <?php session_start(); if (strlen(trim( $_POST [ 'nome' ])) > 0 ) { if (gettype( $_SESSION [ 'nomes' ]) == 'array' ) { array_push( $_SESSION [ 'nomes' ], $_POST [ 'nome' ]); } else { $_SESSION [ 'nomes' ] = array ( $_POST [ 'nome' ]); } } ?> < html > < head >< title > CEFET-PHB </ title ></ head > < body > < form action = "exemplo_session3.php" method = "post" > < p > Nome: < input name = "nome" type = "text" /></ p > < input type = "submit" value = "Inserir Nome" /> </ form > <?php if (gettype( $_SESSION [ 'nomes' ]) == 'array' ) { echo '<p>Nomes inseridos na sessão:</p>' ; foreach ( $_SESSION [ 'nomes' ] as $item ) { echo $item . '<br/>' ; } } ?> </ body > </ html >
20. Inserindo itens em um array <?php session_start(); if (strlen(trim( $_POST [ 'nome' ])) > 0 ) { $tamanho = count( $_COOKIE [ 'nomes' ]); setcookie( "nomes[ $tamanho ]" , $_POST [ 'nome' ]); } ?> < html > < head >< title > CEFET-PHB </ title ></ head > < body > < form action = "exemplo_session3.php" method = "post" > < p > Nome: < input name = "nome" type = "text" /></ p > < input type = "submit" value = "Inserir Nome" /> </ form > <?php if (gettype( $_COOKIE [ 'nomes' ]) == 'array' ) { echo '<p>Nomes inseridos na sessão:</p>' ; foreach ( $_COOKIE [ 'nomes' ] as $item ) { echo $item . '<br/>' ; } echo $_POST [ 'nome' ]. '<br/>' ; } ?> </ body > </ html >
21.
22. Redirecionamento via HTML < html > < head > < meta http-equiv = "refresh" content = "0;url=http://localhost/xampp/" /> </ head > < body > < p > Redirecionando... </ p > </ body > </ html >
23.
24. Autenticação HTTP <?php function authenticate() { header( 'WWW-Authenticate: Basic realm="CEFET-PHB"' ); header( 'HTTP/1.0 401 Unauthorized' ); echo 'Usuário ou senha invalido(s).' ; exit ; } if (! isset ( $_SERVER [ 'PHP_AUTH_USER' ])) { authenticate(); } if ( $_SERVER [ 'PHP_AUTH_USER' ] != 'regis' || $_SERVER [ 'PHP_AUTH_PW' ] != '1234' ) { authenticate(); } ?> < html > < head >< title > CEFET-PHB </ title ></ head > < body > < p > Bem-vindo ao nosso site!!! </ p > </ body > </ html >
25. CAPTCHA <!-- exemplo_captcha.php --> < html > < head > < title > CEFET-PHB </ title > </ head > < body > < h1 > CAPTCHA </ h1 > < p > Completely Automated Public Turing test to tell Computers and Humans Apart </ p > < p > teste de Turing público completamente automatizado para diferenciar entre computadores e humanos </ p > < img src = "exemplo_captcha2.php" /> </ body > </ html >