Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Обновление аватара, Как убрать кэширование старой авы 
:(
    Опции темы
AGENTxXx
Дата 31.5.2011, 11:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 231
Регистрация: 8.6.2009

Репутация: нет
Всего: 1



Добрый день. У меня вот такая проблема:

Когда пользователь меняет аватар, то он меняется, но пользователь этого не увидит, пока не обновит страницу вручную. Т.е. остается кэшированая авка...
Реализация такая:
Пользователь отправляет авку, имя авки меняется на avatar. и расширение данного файла...
Подскажите, как нужно реализовать так, чтобы после смены аватара, авка появлялась уже новая?

Заранее благодарен! =)
PM MAIL   Вверх
s0lman
Дата 31.5.2011, 12:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Белый и лохматый
**


Профиль
Группа: Участник
Сообщений: 637
Регистрация: 1.11.2007
Где: Ukraine

Репутация: 9
Всего: 29



как-то так


--------------------
Когда я уже выучусь на волшебника? :(
PM   Вверх
MoLeX
Дата 31.5.2011, 12:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Местный пингвин
****


Профиль
Группа: Модератор
Сообщений: 4076
Регистрация: 17.5.2007

Репутация: 46
Всего: 140



есть более простое решение
Код

echo '<img src="http://site.local/user1/ava.png?'.time().'" />';



--------------------
Amazing  smile 
PM MAIL WWW ICQ   Вверх
solenko
Дата 31.5.2011, 17:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1473
Регистрация: 15.1.2006
Где: Украина

Репутация: 34
Всего: 67



Цитата(MoLeX @  31.5.2011,  11:37 Найти цитируемый пост)
есть более простое решение

Это решение напрочь отрубит кеширование -- геморой и клиенту и серверу.

Решение проще - корректно настроить сервер, чтобы он отдавал корректные ETag





--------------------
Ла-ла-ла-ла
Заметьте, нет официального подтверждения, что это не просто четыре слога.
PM MAIL WWW ICQ Skype   Вверх
AGENTxXx
Дата 31.5.2011, 17:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 231
Регистрация: 8.6.2009

Репутация: нет
Всего: 1



MoLeX, вот типа того я и думал... Но нужно получается один раз так сделать и дальше функцию time не использовать... 

Хотя вот как сделал: просто на странице с сохранением через GET добавляю переменную nm=time() и выдается нужный результат - ава меняется. Ну это по началу.. В FFx протянуло, а вот в Opera - нет.

В общем сделал так: все что выше, + 
Код

echo '<img src="http://site.local/user1/ava.png?'.$_GET[nm].'" />';


Я думаю такая реализация нормальна?


solenko - в моей случае такого происходить не будет. Так как переменная nm в остальных случаях является не существующей, т.е. пустой и все будет ровно. Или я не прав?

Это сообщение отредактировал(а) AGENTxXx - 31.5.2011, 17:29
PM MAIL   Вверх
Sanchezzz
Дата 1.6.2011, 21:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1670
Регистрация: 19.11.2006
Где: Voronezh

Репутация: 41
Всего: 60



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

Это сообщение отредактировал(а) Sanchezzz - 1.6.2011, 21:36


--------------------
Понравился ответ "+" по репе, не забываем закрывать тему, заказы в LS.
PM MAIL Skype GTalk   Вверх
AGENTxXx
Дата 2.6.2011, 10:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 231
Регистрация: 8.6.2009

Репутация: нет
Всего: 1



В данном случае тогда можно вверху страницы дописать строку, которая запрещает показ ошибок (не помню на память)
или поставить условный оператор - тогда точно все будет ОК, но не совсем эффективно, т.к. всегда будет проверяться,
или поставить @ перед переменной - будет ли работать так - не уверен, но попробовать стоит)))
PM MAIL   Вверх
s0lman
Дата 2.6.2011, 10:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Белый и лохматый
**


Профиль
Группа: Участник
Сообщений: 637
Регистрация: 1.11.2007
Где: Ukraine

Репутация: 9
Всего: 29



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


--------------------
Когда я уже выучусь на волшебника? :(
PM   Вверх
AGENTxXx
Дата 2.6.2011, 13:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 231
Регистрация: 8.6.2009

Репутация: нет
Всего: 1



Ну в данном случае, 2 вариант как раз подойдет и не будет ошибок, но производительность частично упадет... В общем, в данном случае - за повышение производительности все же. Если кто то может предложить оптимальный вариант, то пожалуйста, если нет - то думаю тему можно закрывать =)
PM MAIL   Вверх
InfMag
Дата 5.6.2011, 17:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


…
***


Профиль
Группа: Завсегдатай
Сообщений: 1037
Регистрация: 21.11.2004

Репутация: 1
Всего: 4



Мне кажется самый адекватный способ просто складывать аватар в новый файл с новым именем.
Например /user1/avatar/guh9hg27h397gh2g932hg23.png
А делать имя типа: md5(time())+'.png' только при загрузке аватары, дальше хранить имя в базе где-нибудь. Кстати имя может быть условным, ну то-есть вы можете сохранять файл в avatar.png, а в .htaccess настроить /user1/avatar/*.png /user1/avatar.png что-то вроде того.
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0508 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.