Ir para conteúdo
Fórum Script Brasil
  • 0

Redirecionar


Marcio Medina

Pergunta

Olá Pessoal,

Antes de tudo, agradeço a atenção dispensada para este post. Gostaria de saber como faço para redirecionar o usuário que não usa o IE para uma página de erro. O problema é o seguinte: estou fazendo um site que possui alguns scripts que desabilitam o print screen entre outros que só funcionam no IE, mas se o visitante navegar com o Firefox, o script não será válido. Desta forma, gostaria de obrigá-lo a usar o IE. Caso ele esteja usando outro navegador, ele será redirecionado para uma página de erro qualquer. Sei que quando alguém quer copiar uma foto consegue, mas minha intenção é dificultar isso para o usuário leigo.Tem alguma forma de usar o "if" e "else" para isso? Caso alguém consiga me ajudar, ficaria muito grato.

Novamente, agradeço a atenção de todos.

Marcio

Link para o comentário
Compartilhar em outros sites

8 respostass a esta questão

Posts Recomendados

  • 0

Acho que com $_SERVER["HTTP_USER_AGENT"] dá pra saber...

tipo:

if($_SERVER["HTTP_USER_AGENT"] == "Navegador Tal"){
  header("location:outroNavegador.php");
}

Mas acho que você vai ter que usar substr pra achar o nome certinho porque $_SERVER["HTTP_USER_AGENT"] retorna navegador e suas compatibilidades...

Link para o comentário
Compartilhar em outros sites

  • 0

Olá Searching_,

Achei legal, mas no caso, gostaria que só aceitasse o IE. Como eu faria para bloquear pelo menos o Firefox, Netscape, Opera e Safari? Separaria o "Navegador Tal" por vírgulas? E como eu usaria a substr?

Desculpe estar enchendo muito o saco, é que sou iniciante em php e preciso muito dessa função para proteger alguns conteúdos. De antemão, sou muito grato pela ajuda.

Marcio

Link para o comentário
Compartilhar em outros sites

  • 0

Tipo:


$pos = strpos($_SERVER['HTTP_USER_AGENT'], " ");
$navegador = substr($_SERVER['HTTP_USER_AGENT'],0,$pos); 

if($navegador == "Mozila/4.0" || $navegador == "Mozila/2.0" || $navegador == "Mozila/FireFox") // e por ai vai...

echo "Você não tem acesso a essa página!";
echo "<script>location.href='index.php'</script>";

Algo assim... naujm testei ... mas acho que funciona!

Link para o comentário
Compartilhar em outros sites

  • 0

Caro searching_,

Valeu mesmo. Funcionou perfeitamente. Só não entendi a parte do código "e por aí vai". Será que poderia colocar no código o bloqueio para o netscape também? Me tira uma dúvida: se o script bloqueia as teclas do IE, bloqueia também para o Opera, já que são semelhantes?

muito obrigado mesmo!

Marcio

Link para o comentário
Compartilhar em outros sites

  • 0

Realmente searching_ o IE é detectado como Mozila/4.0...

Marcio Medina achei um code extenso na net mas eu adaptei ele p/ tu, testa aê:

if(ereg('MSIE ([0-9].[0-9]{1,2})', $HTTP_USER_AGENT, $log)) 
{ 
   echo "Direciona para o sistema";
}
else
{ 
echo "É, infelizmente tu vai ter que usar o IE";
}

T+

André

Link para o comentário
Compartilhar em outros sites

  • 0

Olá André,

Bem legal mesmo. Funcionou. Só tem 1 probleminha: se eu colocá-lo nas pages internas, ele fica recarregando a mesma página constantemente. Por exemplo: se eu colocar na inicial beleza, ele detecta o navegador e acusa erro porque eu uso assim: index para a inicial (lógico) e criei um link para acessar o index2. Neste index2 tem o código que você me passou. Se o navegador não for IE ele da erro. Agora se coloco este código no link empresa, ele fica recarregando a página direto, pois a page também tem o code

<?php
if(ereg('MSIE ([0-9].[0-9]{1,2})', $HTTP_USER_AGENT, $log)) 
{ 
   echo "<script>location.href='empresa.php'</script>";
}
else
{ 
echo "É, infelizmente tu vai ter que usar o IE";
}
?>

entendeu? Será que tem alguma coisa que eu possa fazer para não acontecer isso?

Lógica: Página 1 (s/ script) - com link Entrar>>Page 2 (c/ script) Outro navegador recusa / se for IE Fica recarregando a mesma página>>Page 3 (c/ script) a mesma coisa e por aí vai...

Então se o cara copiar o link e usar qualquer outro navegador ele consegue entrar pois só o início tem o script.

Se puder me dar mais essa luz...

Searching_, agradeço muito sua colaboração também. Somando a experiência de um e de outro, acabo chegando lá.

Sds,

Marcio

Link para o comentário
Compartilhar em outros sites

  • 0

Olá meus amigos André e Searching_,

Até que enfim consegui (rsrs). Respondi o post do André e logo após me chegou a luz. Eu precisaria carregar a página somente no IE e caso contrário daria erro. Então peguei o code que o André me passou e fiz o seguinte:

<?php
if(ereg('MSIE ([0-9].[0-9]{1,2})', $HTTP_USER_AGENT, $log)) 
{ 
   echo "<script>load.this.page</script>";
}
else
{ 
echo "<script>location.href='erro.php'</script>";
}
?>

e criei uma page erro.php que é acessível por qualquer navegador. Desta forma deu certo. Muito obrigado a vocês dois por me ajudarem.

qualquer coisa estamos aí.

Sds,

Marcio

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...