![]() |
|
Модераторы: korob2001, ginnie |
![]()
|
|
| alt87 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 10.8.2009 Репутация: нет Всего: нет |
День добрый. Суть проблемы такая: есть cgi-скрипт, который оменивается информацией с PostgreSQL и генерирует таблицу с данными из БД. Необходимо, чтобы данные обновлялись, допустим, каждый 2 секунды. Как это можно реализовать на perl? Заранее благодарен.
|
|||
|
||||
| chaos |
|
|||
![]() Серийный программист ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2979 Регистрация: 7.7.2004 Где: Екатеринбург Репутация: нет Всего: 44 |
обновлялись где? в браузере? если да то может проще на уровне клиента сделать таймер(на JS) ? |
|||
|
||||
| alt87 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 10.8.2009 Репутация: нет Всего: нет |
Нужно, чтобы perl через определенные промежутки времени отправлял запрос к СУБД, а затем обновлял содержимое страницы. И проблема в том, как заставить perl это делать.
|
|||
|
||||
| infarch |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 526 Регистрация: 13.3.2009 Репутация: нет Всего: 1 |
Сервер не обновляет клиента, будь то хоть перл, хоть нечто иное. Запрограммируй страницу на рефреш каждые n минут и получай новые данные. Или через Ajax по таймеру. Если нужно периодически производить манипуляции с базой на сервере, удобно написать сервис который и будет этим заниматься. |
|||
|
||||
| Pfailed |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 933 Регистрация: 19.7.2009 Репутация: 2 Всего: 39 |
Может человеку что то вроде этого хочется?
Кароче постепенный вывод данных на страницу через определенные промежутки времени. |
|||
|
||||
| alt87 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 10.8.2009 Репутация: нет Всего: нет |
Я правильно понял, что модуль CGI::Ajax позволяет обмениваться информацией с сервером без перегрузки страницы? То есть я смогу запрограммировать таймер с использованием системного времени, и через заданные промежутки времени смогу отправлять запросы с БД и обновлять часть содержимого страницы без ее полной перегрузки? Я уточню немного то, что мне требуется. Все это дело мне нужно для диплома. Страница будет иметь вид большой таблицы. Содержимое каждой ячейки соответствует значению из БД. Причем часть столбцов должна обновлять свои значения только при нажатии соответствующей кнопки. А остальные столбцы должны обновлять свои значения непрерывно по таймеру. Поэтому я думаю, что рефреш страницы через определенное время не выход.
|
|||
|
||||
| infarch |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 526 Регистрация: 13.3.2009 Репутация: нет Всего: 1 |
Данный модуль я никогда не использовал, так что ничего про него сказать не могу. Однако аджаксом пользовался предостаточно. Могу сказать одно - никакие дополнительные модули для этого НЕ НУЖНЫ. Не стоит засорять сервер всевозможными модулями без необходимости (IMHO). Сейчас посмотрел на этот модуль в CPAN. Судя по всему, он имеет смысл если вы генерите html с помощью cgi. Однако гораздо удобнее делать это с помощью template toolkit. И тем более инициатором обновления страницы все равно является клиент, а не сервер. Как создать асинхронный запрос с помощью javascript можно узнать без малейших проблем - полон интернет инофрмации. Тем более это очень просто. Его хендлер на сервере ничем не отличается от любого другого. например, если надо вернуть некий JSON, пишите следующее:
Получив информацию через асинхронный запрос, парсите и юзаете ее как угодно. А вообще, позволю себе маленькую рекламу. Попробуйте использовать ExtJS framework. Там есть все что нужно для генерации каких угодно таблиц, в том числе и обновляемых через ajax. Конечно, этот фреймворк не единственный в своем роде, но imho лучший. |
||||
|
|||||
![]()
|
| Правила форума "Perl: CGI программирование" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Perl: разработка для Web | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |