Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Подавить кэширование изображения
 
 автор: ElvisPresley2006   (03.04.2006 в 12:31)   письмо автору
 
 

Народ, приветствую!
Помогите плиз решить трабл, который меня уже насколько дней одолевает. Я начинающий программер на PHP, поэтому что-то получается сразу, а до чего-то уже несколько дней додуматься не могу.
Трабл следующий. Вывожу на сайте сведения о людях (фио, тф, ну и тп, ФОТО) из MYSQL. ФОТО хранится как ссылка на файл в базе. Так вот если изменить фото, но оставить название файла таким же, то в дальнейшем все остается на сайте по-прежнему - фотка не меняется.
Кэширование мне на сайте совершенно не нужно.
добавляю на index.php
<?php
Header
("Expires: Mon, 26 Jul 2005 05:00:00 GMT");
Header("Cache-Control: no-cache, must-revalidate");
Header("Pragma: no-cache");
Header("Last-Modified: ".gmdate("D, d M Y H:i:s")."GMT");
header("charset: windows-1251");
?>

но фотка не обновляется. Кстати, вся инфа выводится исключительно на странице index.php путем вызовов require_once("contacts_page.php"); в поле таблицы.

что я не так делаю? как отключить кэш нафиг?

   
 
 автор: Oleg-Perm   (03.04.2006 в 12:36)   письмо автору
 
   для: ElvisPresley2006   (03.04.2006 в 12:31)
 

Я тоже начинающий, но мне помогло следующее.
Попробуй отключить кэширование в браузе, которым пользуешься.
Я, например, в Firefox'e поставил значение кэша в 0 Мб. :-) После этого всё клёво!
Успехов!

   
 
 автор: ElvisPresley2006   (03.04.2006 в 13:11)   письмо автору
 
   для: Oleg-Perm   (03.04.2006 в 12:36)
 

не буду же я выставлять например сайт наружу, а не внутри сети и писать жирными буквами - отключите кэш в броузере.

кстати, фотка обновляется, но не когда жмакаешь например по ФИО, а когда принудительно в броузере обновить нажимаешь!

НУ не катит такая фигня. Хотца чтобы по уму все было.

   
 
 автор: cheops   (03.04.2006 в 14:22)   письмо автору
 
   для: ElvisPresley2006   (03.04.2006 в 13:11)
 

А фотография динамически меняется? Почему возникает проблема с кэшированием? Вроде бы кэшируется изображение и ладно?

   
 
 автор: Sasha   (03.04.2006 в 15:00)   письмо автору
 
   для: cheops   (03.04.2006 в 14:22)
 

нужно менять имя изображения. хоть как-то...

   
 
 автор: cheops   (03.04.2006 в 23:17)   письмо автору
 
   для: Sasha   (03.04.2006 в 15:00)
 

Кстати, для этого часто цепляют GET-параметр и переадют ему случайное число.

   
 
 автор: Евгений Петров   (03.04.2006 в 23:35)   письмо автору
 
   для: cheops   (03.04.2006 в 23:17)
 

Кстати, для этого часто цепляют GET-параметр и переают ему случайное число.
А я то думаю, ну нафига это надо, сломал голову уже (пост хотел отдельный сделать), а оно вот где оказывается собака зарылась... :)))

   
 
 автор: Trianon   (04.04.2006 в 10:05)   письмо автору
 
   для: cheops   (03.04.2006 в 23:17)
 

Форменное свинство, если вдуматься. Ладно бы еще не случайное число в GET, а, допустим, таймштамп или MD изображения в имени. Так нет. Ни себе, ни людям.

   
 
 автор: cheops   (04.04.2006 в 12:58)   письмо автору
 
   для: Trianon   (04.04.2006 в 10:05)
 

Хм... а чем таймштамп лучше случайного числа?

   
 
 автор: Trianon   (04.04.2006 в 13:16)   письмо автору
 
   для: cheops   (04.04.2006 в 12:58)
 

Таймштамп в имени файла. Не в строке параметров. Позволит нормально кешировать объект до тех пор, пока тот не устареет и ему не придет замена.

   
 
 автор: cheops   (04.04.2006 в 13:20)   письмо автору
 
   для: Trianon   (04.04.2006 в 13:16)
 

Хм... а если кэшируется Web-стараница и на неё жёсткая ссылка... название больно не поменяешь...

   
 
 автор: Trianon   (04.04.2006 в 13:37)   письмо автору
 
   для: cheops   (04.04.2006 в 13:20)
 

Спич шел о фотографиях... Т.е. о файлах, которые могут иметь приличный объем, и которые относительно редко меняются. Почему собственно запрт на кеширование и выглядит настолько неуместным.

А если хочется кешировать web-страницы с изначально динамической природой, то ссылки на них надо оставлять динамическими. И уже внутри отклика делать переброс ( header(Location) header(Refresh) meta(refresh) ) на кешированную копию с именем, построенным по id.
По-моему, так.

   
 
 автор: ElvisPresley2006   (05.04.2006 в 17:04)   письмо автору
 
   для: ElvisPresley2006   (03.04.2006 в 12:31)
 

с УДЕМБМ РТПУФП - ЙНС ЖБКМБ ЬФП ЧТЕНС ЕЗП ДПВБЧМЕОЙС + ЕЗП ТЕБМШОПЕ ОБЪЧБОЙЕ. еУМЙ С НЕОСА ЖБКМ ЖПФП ЮЕТЕЪ БДНЙО УБКФБ, ФП НЕОСА Й ОБЪЧБОЙЕ ЖБКМБ ОБ ТЕБМШОПЕ ЧТЕНС+ОХ ИПФШ ФП ЦЕ ОБЪЧБОЙЕ ЖБКМБ, ОХ Й Ч ВБЪХ СУОПЕ ДЕМП РЙЫХ ОПЧПЕ ОБЪЧБОЙЕ ЖБКМБ.

   
 
 автор: Trianon   (05.04.2006 в 17:11)   письмо автору
 
   для: ElvisPresley2006   (05.04.2006 в 17:04)
 

>Я сделал просто - имя файла это время его добавления + его реальное название.
> Если я меняю файл фото через админ сайта,
> то меняю и название файла на реальное время+ну хоть то же название файла,
> ну и в базу ясное дело пишу новое название файла.


Я это и предлагал. Поместить таймштамп в название файла.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования