Algumas vezes é necessário utilizar a função header no PHP, por isto mostraremos neste tutorial a maior parte das coisas que você pode fazer com esta função.
Para quem não sabe , a função header do PHP envia e altera informações do header http do browser.
Vamos ao tutorial:
1 – O header do http permite enviar varias informações para o browser, como um redirecionamento da pagina:
<?php header("Location: http://www.treinaweb.com.br/blog"); ?>
Neste caso o browser será redirecionado assim que começar o carregamento da pagina. É recomendado sempre utilizar urls completas, porque alguns browsers (antigos) não suportam urls relativas.
2 – Também é possível mudar o content type do documento.
<?php header("Content-Type: text/css"); ?>
Agora você pode apontar para o arquivo css.php, como se fosse um arquivo css. Com isto é possível criar dinamicamente arquivos css, sendo útil ao projetar css para funcionar em qualquer browser e resolução.
3 – É possível forçar o browser a exibir a janela de download e ter um nome recomendado para o arquivo.
<?php header("Content-Type: image/jpeg"); header("Content-Disposition: attachment; filename=imagem.jpg"); ?>
Com isto o browser mostrará a janela de download, com o nome do arquivo sendo imagem.jpg, independente do nome do arquivo php.
4 – Você também pode enviar erros específicos ao browser.
<?php header("HTTP/1.0 404 Not Found"); ?>
É importante não esquecer as diferentes mensagens de erro e o que elas significam.
5 – Finalizando, gostaríamos de sugerir, que sempre utilize o exit para ter certeza que nada depois do código será executado, a menos que o código seja utilizado para trazer uma imagem ou informações necessárias para o arquivo.
<?php header("Location: http://www.treinaweb.com.br/blog"); exit; ?>
Se você quiser se aprofundar mais na função header, ou estes exemplos não atendem suas necessidades, sugerimos que leia documentação oficial e na integra da função, que pode ser encontrada aqui.
Até a próxima!
Muito bom. Posso uzar para quando um cliente acessar o site ex.: “esinet.com.br” ele entrar sempre assim: “www.esinet.com.br” . contendo o “www” na frente?
Giovanni, neste caso, acredito que você queira redirecionar o usuário, então o mais recomendável é usar Redirecionamento 301 com .htaccess ( Para Apache ).
Quando o usuário entrar: site.com.br ele redireciona automaticamente para: http://www.site.com.br
A regra ficaria mais ou menos assim:
RewriteCond %{http_host} ^site.com.br [NC]
RewriteRule ^(.*)$ http://www.site.com.br/$1 [r=301,NC]
Ps: Procure saber mais sobre htaccess e verá como implementar isso.