0 / 0 / 0
Регистрация: 22.10.2012
Сообщений: 31

Обновить картинку в браузере, инициатор - сервер. Как?

07.02.2014, 13:21. Показов 1576. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Собственно сабж.

Подробно. Есть сайт, на страничке пользователя1 есть картинка загруженная с сервера. Картинка может меняться на сервере путем её загрузки другим пользователем. Изображение принимается и сохраняется с помощью php. Надо обновить эту картинку на страничке пользователя1 сразу после её обновления на сервере. Как это лучше сделать?

Пишу здесь потому что первое что приходит в голову это поллинг.. раз в 1-2 секунды делать скриптом запрос на сервер и обновлять, если она изменена. Но это в лоб и не красиво. Есть какие либо асинхронные варианты? Что бы сервер послал оповещение "мол вы старье показываете, а у меня новенькое есть!"?

Желательно решение с помощью стандартных php и JavaScript. PHP запишет в БД флаг новых данных, но как оповестить браузер пользователя1?

Добавлено через 11 часов 20 минут
Помогите новичку!

Как вообще такие задачи решаются?
Кроме периодического опроса сервера скриптом в браузере клиента какие-то варианты существуют?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
07.02.2014, 13:21
Ответы с готовыми решениями:

Как обновить сервер? Подскажите!
ввожу: git pull вижу: --- --- (myvenv) 12:33 ~/my-first-blog (master)$ git pull remote: Counting objects: 8, done. remote:...

Как добавить картинку для вкладки в браузере?
Здравствуйте, просто не знаю как она называется. Мне нужно вставить картинку в это место для своего сайта, как это сделать?

Как передать картинку на сервер в android?
Как передать картинку на сервер в android?

10
 Аватар для psinetron
9 / 9 / 5
Регистрация: 24.01.2012
Сообщений: 61
07.02.2014, 14:48
websockets. Но... тут либо демона на php ставить (на мой взгляд не очень приятно), либо node.js
0
0 / 0 / 0
Регистрация: 22.10.2012
Сообщений: 31
07.02.2014, 15:16  [ТС]
Цитата Сообщение от psinetron Посмотреть сообщение
websockets. Но... тут либо демона на php ставить (на мой взгляд не очень приятно), либо node.js
Почитал про вебсокеты - понравилось, классная штука. Но сервера на которых работает сайт их не поддерживает.. ноде тоже.
Читаю про пхп демонов.

Спасибо за подсказку!
0
07.02.2014, 19:46

Не по теме:

Цитата Сообщение от bt1024 Посмотреть сообщение
Почитал про вебсокеты - понравилось, классная штука. Но сервера на которых работает сайт их не поддерживает.. ноде тоже.
Читаю про пхп демонов.
Спасибо за подсказку!
могу ещё подсказать вам почитать про вампиров
это столь же бесполезно :)

0
0 / 0 / 0
Регистрация: 22.10.2012
Сообщений: 31
07.02.2014, 22:56  [ТС]
Цитата Сообщение от kalabuni Посмотреть сообщение

Не по теме:

могу ещё подсказать вам почитать про вампиров
это столь же бесполезно :)

вау, какой юмор и такой полезный!
0
супермизантроп
Эксперт JS
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
08.02.2014, 00:11
Цитата Сообщение от bt1024 Посмотреть сообщение
вау, какой юмор и такой полезный!
я рад, что вы наконец-то поняли всю бессмысленность поставленной вами задачи
---------

браузер - это как телевизор, а сервер - это как телестудия, передающая сигнал миллионам телевизоров
вы хотите, чтобы из телестудии дистанционно включали именно ваш телевизор (и на полную громкость) при каждом выпуске свежих новостей?
0
0 / 0 / 0
Регистрация: 22.10.2012
Сообщений: 31
08.02.2014, 02:03  [ТС]
Цитата Сообщение от kalabuni Посмотреть сообщение
я рад, что вы наконец-то поняли всю бессмысленность поставленной вами задачи
---------
браузер - это как телевизор, а сервер - это как телестудия, передающая сигнал миллионам телевизоров
вы хотите, чтобы из телестудии дистанционно включали именно ваш телевизор (и на полную громкость) при каждом выпуске свежих новостей?
Почему бессмысленность? Сказано же, можно периодически опрашивать. Это не бессмысленно, просто это синхронная работа, а мне выгодно/просто красиво/удобнее асинхронная.

Телевизор, телестудия, миллионы зрителей смотрящих.. тьфу! Ну ясное дело, что инициатор всей передачи данных это браузер клиента, сервер отвечает на запросы.. Это устоявшаяся парадигма, вот мне было бы удобно использовать оповещение онлайн клиента сервером, вот удобно и всё и плевать на все парадигмы, хорошо это или плохо, не волнует. Ну нечего сказать, зачем писать просто так..

Как то же работают оповещения в контакте (правда на приложение для смартфона), вайберы и прочие "общалки" и не видно там постоянного опроса сервера клиентом, там что-то асинхронное.. Такое сложилось мнение судя по поведению этих программ. Суть вопроса, хочу того же от святой троицы php, javaSript, mysql.
БД тут конечно лишняя..

В общем, отправляются данные ПОСТ запросом на сервер, php его принимает, сохраняет, обрабатывает и может, если у него есть такая функциональность, передать запрос онлайн пользователю. Есть его ip.., ну наверное всё есть для этого. Что делает сервер что бы отправить клиенту ответ не зависимо от за NAT-ом он или имеет белый IP. Вот мне надо тоже самое. Только как в браузере настроить "слушателя" на такие ответы.
Да-да, это невозможно.., обычно.
0
супермизантроп
Эксперт JS
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
08.02.2014, 07:53
Цитата Сообщение от bt1024 Посмотреть сообщение
Телевизор, телестудия, миллионы зрителей смотрящих.. тьфу!
аналогия - умозаключение, в котором от внешней подобности предметов за одними признаками, делается вывод про возможность их схожести по другим признакам
"тьфукаете" вы от невежества своего

Цитата Сообщение от bt1024 Посмотреть сообщение
может, если у него есть такая функциональность, передать запрос онлайн пользователю
не может, нет у него такой функциональности
0
0 / 0 / 0
Регистрация: 22.10.2012
Сообщений: 31
08.02.2014, 13:27  [ТС]
Цитата Сообщение от kalabuni Посмотреть сообщение
аналогия - умозаключение, в котором от внешней подобности предметов за одними признаками, делается вывод про возможность их схожести по другим признакам
"тьфукаете" вы от невежества своего
от вашего невежества и полной бессмысленности вашего присутствия в этой теме.
Аналогии вы строить не умеете, отговорки одни.
0
супермизантроп
Эксперт JS
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
08.02.2014, 13:58
bt1024, верно, тема абсолютно бессмысленная, о чём я вам и толкую
соответственно, любое участие в ней - бессмысленно
0
0 / 0 / 0
Регистрация: 17.03.2015
Сообщений: 1
17.03.2015, 20:12
Все же есть один вариант:
JavaScript -> HttpRequest -> действие происходит в момент когда readyState сработает.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
17.03.2015, 20:12
Помогаю со студенческими работами здесь

Как на Яве загрузить на сервер картинку?
Сабж. Надо от инет-пользователя принимать на сервере файлики. Типа пользователь у себя через браузер указывает какой файлик, а мой сервер с...

WCF. Как обновить ServiceReference если клиент и сервер находятся в одном решении?
Доброго времени суток. Понимаю, что вопрос собственно нубский, но... Есть решение, в силу некоторых обстоятельств в нем создано несколько...

Как установить картинку после входа на сервер в Counter-Strike 1.6?
Помогите если вы делали сервер или у вас есть сервер то как изметьнить или поставить картинку после захода на сервак в меню выюора теров...

Как загрузить картинку на сервер без открытия диалогового окна?
как загрузить картинку на сервер без открытия диалогового окна? страница сайта автоматически загружает картинку после выбора.

Как можно картинку переместить на сервер и вписать имя картинки в бд?
Доброго времени суток! Создаю новую новость, прикрепляю к ней фото,как можно картинку переместить на сервер и вписать имя картинки в бд?...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! в-строка - входное арифметическое выражение в инфиксной(обычной). . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru