Redirect em PHP | DeServ – Info
Lomadee, uma nova espcie na web. A maior plataforma de afiliados da Amrica Latina.

Redirect em PHP

By Flávio Silva

Para fazer com que o usuário ao acessar um determinado endereço do seu site seja redirecionado para outro endereço, dentro ou fora do seu site, você deverá utilizar o parametro location: da função header(). Abaixo segue um exemplo de uso básico desta função: 

<?php
 #abaixo, criamos uma variavel que terá como conteúdo o endereço para onde haverá o redirecionamento:
 $redirect = "http://www.deserv.info";
 
 #abaixo, chamamos a função header() com o atributo location: apontando para a variavel $redirect, que por
 #sua vez aponta para o endereço de onde ocorrerá o redirecionamento
 header("location:$redirect");
 
?>

Da maneira como esta acima, sempre que o usuário acessar a página que contém o código acima, ele será redirecionado automaticamente para http://www.deserv.info.

O redirecionamento não se restringe a endereços absolutos de sites, sendo que você também pode redirecionar para pastas dentro do seu FTP, ou mesmo arquivos que estão na mesma pasta utilizando um caminho relativo a ela.

Para melhor exemplificar isto, vamos criar um script que irá capturar o endereço pelo qual esta acessado, e redirecionar o usuário para outro conforme este endereço de acesso.

<?php
 #atribui para a váriavel $servidor o conteúdo da váriavel de ambiente $_SERVER["SERVER_NAME"], que por sua vez
 #contém o endereço pelo qual o site foi acessado
 $servidor = &$_SERVER["SERVER_NAME"];
 
switch ($servidor) { #verifica a variavel $servidor
 
    case "cliente.seudominio.com.br": #se $servidor igual cliente.seudominio.com.br
     unset($servidor);  #apaga a variavel $servidor, para otimizar o uso de memória uma vez que ela não será mais usada
        header("location:http://seudominio.com.br/cliente");  #e faz um redirect para http://seudominio.com.br/cliente
                break;
 
    case "fornecedores.seudominio.com.br":
     unset($servidor);
        header("/fornecedores"); #redireciona para o diretorio fornecedores, dentro da raiz (/) do site
                break;
 
    case "adm.seudominio.com.br":
     unset($servidor);
        header("location:../adm"); #direciona para a pasta adm, que esta um diretório abaixo (../) do atual
                break;
 
    case "diretoria.seudominio.com.br":
     unset($servidor);
        header("location:diretoria.html"); #direciona para o arquivo diretoria.html dentro do mesmo diretorio do arquivo atual
                break;
 
   default: #caso não seja nenhum dos endereços acima
        header("location:/"); #direciona para a raiz do site
		break;
?>

Tags: , ,

Deixe uma Resposta