• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

ivovicente

Ficheiro de view_image.php

5 mensagens neste tópico

Olá Caros Programadores

tenho visto em alguns sites o seguinte, carregarem imagem mas que em vez de meterem o html <img src=""> usam um ficheiro php para a carregar, tentei perceber tirar alguns desses ficheiros mas sempre sem sucesso.

Alguem me pode explicar ou dar um exemplo de como fazer isso, procurei pelo forum mas não encontrei, pelo menos tentei palavras chave de pesquisa parecidas com o que escrevi.

Acho que é uma situação interessante, e que evita a copia mais fácil das imagens e a ocultação da Path até as imagens em questão.

Aquele Abraço  :)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Boas!

Efectivamente protege um bocado, mas... nao te esqueças que a imagem está já no computador, o que não impede que se faça, guardar como e depois se ponha a extensão correcta .jpg, se for o caso, ou então a rudimentar técnica do printscreen  :)

Ainda assim, deixo-te um código já testado, porém terás de adaptar à tua situação. Este é o caso em que se lê uma imagem da base de dados, e se retorna como se fosse uma imagem para o browser. Este poderá nem ser o melhor exemplo, por não estar optimizado, mas procura na net melhores, iso é só uma amostra.

<?php
//devolve as imagens da bd
//http://www.weberdev.com/get_example.php3?count=167

$sql = "select imagem from tblImagens where pessoal=5");
$show = mysql_query( $sql ) or die(mysql_error());
$rows = mysql_num_rows($show);

$img=mysql_fetch_row($show);

if($rows<1 or $img[0]==""){
	//nao encontrou imagem na base de dados
	//ESTE exemplo interessa aqui, é a leitura de um ficheiro de imagem, e "desepeja" no browser
	$imgfile = fopen("images/bugou.jpg","rb");
	$final = fread($imgfile, 1000000);
	header("Content-type: image/jpeg");
	print_r($final);
}else{
	// and send the correct header to the browser
	//NESTE caso é "despejar" a imagem, mas da query, ou seja, da consulta à base de dados
	header("Content-type: image/jpeg");
	print($img[0]);
}

?>

Bem, espero que tenha sido útil este código, aprendi bastante quando o fiz  :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

$imgfile = fopen("images/bugou.jpg","rb");

$final = fread($imgfile, 1000000);

Falta-te o fclose($imgfile);. Anyway, podes substituir isso tudo por $final = file_get_contents($imgfile);

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Viva

Vou testar esse código e depois dou feedack sobre como correu o teste.

Obrigado pela atenção

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora