Ir para conteúdo

POWERED BY:

Arquivado

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

Renan Decarlo

Imagem PHP carrega toda vez que atualiza página!

Recommended Posts

Fala imasters!

 

Faz um bom tempo que eu não venho aqui, mas agora to precisando da ajuda de vocês =(!

Eu tenho um script em PHP, que lê o conteúdo de uma certa imagem, e manda pro browser.

 

O arquivo é apenas assim:

<?php
			header("Content-Type: image/jpeg; name=imagem.jpg");
			readfile("images/imagem.jpg");
?>

O problema, é que diferente de uma imagem que se acessa normalmente (site.com/images/imagem.jpg), ele acessa e mostra ela pelo PHP (site.com/imagens.php?file=imagem.jpg). Então, toda vez que você atualiza a página, ele recarrega a imagem toda de novo, ao invés de salvar ela no cache, e não precisar ficar carregando toda hora que o browser atualiza a página, uma vez que já carregou a imagem uma outra vez.

 

Alguém pode me ajudar?

Compartilhar este post


Link para o post
Compartilhar em outros sites

não precisa pegar a imagem por get

 

<?php
$arr = array("i.jpg","2.jpg");
echo "<img scr=\"".$arr[(rand(0, 1))]."\"></img>";
?>
faça algo parecido com isso

Compartilhar este post


Link para o post
Compartilhar em outros sites

Posso esta enganado mas acho o que você quer não seja possível, pois toda vez que da um reload na página e feita uma nova requisição no servidor e tudo é gerado novamente!

 

e imagem também não se guarda em cache.

 

por isso exite o ajax que atualiza somente campos especificos.

 

mas em todo o caso aguarde alguém para te informar melhor!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites
  Daniel o rei disse:

não precisa pegar a imagem por get

 

<?php
$arr = array("i.jpg","2.jpg");
echo "<img scr=\"".$arr[(rand(0, 1))]."\"></img>";
?>
faça algo parecido com isso

No caso o imagens.php volta ao browser com os headers como se fossem uma imagem, então no final eu posso linkar, '<img src="imagens.php?foto.jpg">' por exemplo.

Ou seja, não estou acessando um arquivo php diretamente, então não posso fazer isso que você disse.

 

  WDuarte disse:

Posso esta enganado mas acho o que você quer não seja possível, pois toda vez que da um reload na página e feita uma nova requisição no servidor e tudo é gerado novamente!

 

e imagem também não se guarda em cache.

 

por isso exite o ajax que atualiza somente campos especificos.

 

mas em todo o caso aguarde alguém para te informar melhor!!!

É verdade. Mas por exemplo, se eu abrisse essa imagem em 1 aba, e depois abrisse em outra aba novamente, era pra ela não ser carregada de novo... mas nesse caso ela é carregada toda vez que é acessada.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Agora sobre as abas é a mesma coisa se voce pedisse para iniciar o mesmo navegador novamente, o google chrome bate duro sobre o navegador deles ser o melhor em instabilidade entre as abas.

 

resumindo se uma aba trava a outra permanece sendo assim são independentes

 

abraços!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites
  WDuarte disse:

Agora sobre as abas é a mesma coisa se voce pedisse para iniciar o mesmo navegador novamente, o google chrome bate duro sobre o navegador deles ser o melhor em instabilidade entre as abas.

 

resumindo se uma aba trava a outra permanece sendo assim são independentes

 

abraços!!!

Então, teoricamente se você tivesse que abrir o navegador de novo no Imasters por exemplo, ele iria apenas carregar o conteúdo, as imagens ele já teria armazenado. Mesma coisa, toda hora que você acessa uma página aqui, ele não carrega todas as imagens novamente... porque elas já estão armazenados.

No caso então, é isso que eu quero fazer com essa imagem.

Compartilhar este post


Link para o post
Compartilhar em outros sites
  Renan Decarlo disse:
  WDuarte disse:

Agora sobre as abas é a mesma coisa se voce pedisse para iniciar o mesmo navegador novamente, o google chrome bate duro sobre o navegador deles ser o melhor em instabilidade entre as abas.

 

resumindo se uma aba trava a outra permanece sendo assim são independentes

 

abraços!!!

Então, teoricamente se você tivesse que abrir o navegador de novo no Imasters por exemplo, ele iria apenas carregar o conteúdo, as imagens ele já teria armazenado. Mesma coisa, toda hora que você acessa uma página aqui, ele não carrega todas as imagens novamente... porque elas já estão armazenados.

No caso então, é isso que eu quero fazer com essa imagem.

 

Corrigindo...

 

o google chrome bate duro sobre o navegador deles ser o melhor contra a instabilidade entre as abas.

 

Cara o que você tá querendo acho não seja possível mesmo, pois a cada requisição o servidor vai buscar pelo caminho da imagem se existir mostra senão da link quebrado e se o usuário trocar a imagem naquele momento vai carregar a nova, ai que acho que não armazena imagem em cache mas em todo caso fica a dúvida da uma pesquisada sobre isso

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tem sim.

Acabei de achar pra quem quiser:

  Citar

header('Cache-Control: public, must-revalidate, max-age=3600'); // guarda a imagem por 1h no cache, caso tenha passado mais de 1h, ele recarrega a imagem

Obs: O que o google chrome tem há ver com a história? ¬¬'

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.