Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Tellys Castro

Para impedir que suas imagens sejam exibidas em outro endereço

Recommended Posts

Sobrou um tempinho e por aqui sempre se fala sobre assuntos analogos, nisto ai vai....

 

 

Para impedir que suas imagens sejam exibidas em outros endereços, você pode usar um script simples em PHP. Será necessário apenas modificar todas as tags de imagens de suas páginas pra algo como:

 

<img src="imagem.php?arrquivo=imagem1.gif">

 

O arquivo imagem.php, para a tag <img> puxa a imagem de um diretorio chamado imagens. O codigo que deve estar neste documento é o seguinte:

 

<?phpsession_start();$path = "./imagens/.";$minitype ="image/gif";if ($_SESSION["ticket"] == "aceito"){header("Content-type: ");readfile($path.$arquivo);}?>

Esse script verifica uma variavel de sessao para liberar a exibiçao de imagem. Por isso, toda pagina do site que for mostrar alguma imagem deve apresentar um codigo que cria essa sessao em seu topo

 

<?phpsession_start();$ticket = "aceito"session_register($_SESSION["ticket]");?>

 

vlw

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa solução, supertelnet, mas...

 

Se você quer que seu script funcione independentemente do uso de register_globals, você precisa usar a matriz $_SESSION já que $_SESSION é automaticamente registrada. Se o seu script usa session_register(), ele não irá funcionar em ambientes onde a diretiva de configuração register_globals esteja desabilitada.

Fonte: http://br2.php.net/session_register

 

 

 

Então gostaria de sugerir uma mudança: trocar:

<?php
session_start();
$ticket = "aceito"
session_register($_SESSION["ticket]");
?>

por:

<?php
session_start();
$_SESSION['ticket'] = "aceito";
?>

;)

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

uma dicadependendo do servidor que você esteja utilizando basta ativar o hotlink ele fara com que nenhum espertinho chame sua imagem fora de seu servidor...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pode ser Beraldo, uma boa!!! é que agente que esta acostumado com php tem umas manias antigas...hehe... mas so coloquei pq ultimamente tenho visto muitas perguntas a respeito ai so pra da uma força pra qm ta começando

Compartilhar este post


Link para o post
Compartilhar em outros sites

um exemplo, ai no meu site,tem imagens no formato jpge , gif e png...como ficaria?$minitype ="image/gif/jpge/png"; //acho assim meio q sem logica, neh, so confirma ai para mim...e tbem.<img src="imagem.php?arrquivo=imagem1.gif">ond esta escrito arrquivo seria oq?

Compartilhar este post


Link para o post
Compartilhar em outros sites

um exemplo, ai no meu site,tem imagens no formato jpge , gif e png...como ficaria?$minitype ="image/gif/jpge/png"; //acho assim meio q sem logica, neh, so confirma ai para mim...e tbem.<img src="imagem.php?arrquivo=imagem1.gif">ond esta escrito arrquivo seria oq?

Também estou com essa dúvida.

Compartilhar este post


Link para o post
Compartilhar em outros sites

uma ideia pra ter o type dinamico

 

<?phpsession_start();$path = "./imagens/.";$tipo = explode(".", $arquivo);$minitype ="image/".array_pop($tipo);if ($_SESSION["ticket"] == "aceito"){header("Content-type: $minitype");readfile($path.$arquivo);}?>

assim o codigo coloca "image/extencao_do_arquivo" =D

Compartilhar este post


Link para o post
Compartilhar em outros sites

não é seguro obter o Content-type pela extensão

 

use a função mime_magic pra saber qual o tipo do arquivo

 

pode usar também getimagesize

 

 

PHP
$size = getimagesize($filename);

echo $size['mime'];

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.