Скажите мне пожалуйста, с помощью каких средств возможно сделать автоматическое обновление странички?
И сразу вопрос у меня появился, если страница сама будет обновляться пусть каждые 10 минут, то вдруг она обновиться в момент когда пользователь заполняет форму для отправки на сервер - и у него все данные сбросятся же. Как быть?
![rolleyes.gif](http://phpforum.ru/html/emoticons/rolleyes.gif)
Спустя 10 минут, 17 секунд (30.07.2010 - 06:33) twin написал(а):
Просто обновлять можно метатегом или заголовком. Волшебное слово - refresh
Если есть опасность преждевременного рефреша, то скриптом. Делается таймер, который можно прервать, если какое то поле в форме заполнено. Волшебные слова location.href и setInterval
Если есть опасность преждевременного рефреша, то скриптом. Делается таймер, который можно прервать, если какое то поле в форме заполнено. Волшебные слова location.href и setInterval
Спустя 1 час, 38 минут, 58 секунд (30.07.2010 - 08:12) linker написал(а):
<head>
<meta http-equiv="refresh" content="180"> <!-- здесь в секундах -->
</head>
Спустя 2 часа, 20 минут, 12 секунд (30.07.2010 - 10:32) netruxa написал(а):
вот скрипт будет обновлять страницу каждые десять минут
<script>
function refr()
{
if (поля не заполнены) window.location="index.php";
}
setTimeout(refr,600000);
</script>
Спустя 4 минуты, 2 секунды (30.07.2010 - 10:36) Basili4 написал(а):
Чет мне кажется обновлять все страницу это никак не вариант меня бы стало раздражать постоянное мигание этой странице. Может как то по другому решить поставленную задачу без моргания.
Спустя 14 минут (30.07.2010 - 10:50) linker написал(а):
Basili4
А какая разница что будет моргать раз в 10 минут, вся страница или только ее часть? Да и смысл усложнять то, что делается одной строчкой html-кода.
А какая разница что будет моргать раз в 10 минут, вся страница или только ее часть? Да и смысл усложнять то, что делается одной строчкой html-кода.
Спустя 6 минут, 27 секунд (30.07.2010 - 10:56) Basili4 написал(а):
linker
При павильонном подходе моргать не будет. Если менять только сущность а не разметку все будет происходить не заметно.
При павильонном подходе моргать не будет. Если менять только сущность а не разметку все будет происходить не заметно.
Спустя 58 минут, 45 секунд (30.07.2010 - 11:55) linker написал(а):
Basili4
Зависит от нагрузки на сервак, канала и размеров обновляемой области. Легкого моргания не избежать.
Зависит от нагрузки на сервак, канала и размеров обновляемой области. Легкого моргания не избежать.
Спустя 4 минуты, 59 секунд (30.07.2010 - 12:00) Basili4 написал(а):
linker
Ну так легкое моргание а при тех же условиях обновлять всю страницу вообще не допустимо это 10-20 секунд пустоты в браузере это если обновляться раз в 10 минут то еще пойдет а если раз в минуту то никуда не годится.
Ну так легкое моргание а при тех же условиях обновлять всю страницу вообще не допустимо это 10-20 секунд пустоты в браузере это если обновляться раз в 10 минут то еще пойдет а если раз в минуту то никуда не годится.
Спустя 5 дней, 19 часов, 9 минут, 46 секунд (6.08.2010 - 07:10) zvezda_t написал(а):
Basili4
Как же правильно делать?
Как же правильно делать?
![rolleyes.gif](http://phpforum.ru/html/emoticons/rolleyes.gif)
Спустя 18 минут, 27 секунд (6.08.2010 - 07:28) linker написал(а):
Для раз в десять минут или если не охота мутить с ajax, то достаточно
<meta http-equiv="refresh" content="180">
Спустя 12 минут, 46 секунд (6.08.2010 - 07:41) zvezda_t написал(а):
Цитата (linker @ 6.08.2010 - 04:28) |
Для раз в десять минут или если не охота мутить с ajax, то достаточно <meta http-equiv="refresh" content="180"> |
еще как охота!
мне же условия еще проверять - можно страничку обновлять или нет...
Спустя 2 минуты (6.08.2010 - 07:43) linker написал(а):
Тогда JS для проверки условий и AJAX для обновления.
Спустя 8 минут, 36 секунд (6.08.2010 - 07:52) zvezda_t написал(а):
Цитата (linker @ 6.08.2010 - 04:43) |
Тогда JS для проверки условий и AJAX для обновления. |
простите мою наглость...
![rolleyes.gif](http://phpforum.ru/html/emoticons/rolleyes.gif)
а можно примерчик?
![smile.gif](http://phpforum.ru/html/emoticons/smile.gif)
Условие у меня - если пользователь открыл форму для заполнения полей-обновлять ему страницу нельзя, те:
Если на странице есть поле для ввода с таким то id - то не обновлять страницу,
если поля нет - то обновлять каждые 10 минут.
Спустя 15 минут, 15 секунд (6.08.2010 - 08:07) linker написал(а):
Для начала нужно написать или где-то взять какую-нибудь библиотеку для работы с ajax. Форма имеет id какой-нибудь? Если да, то для первого и второго условия достаточно одного и того же кода, но для начала нужно установить таймер
<body onload="setTimeout('Refresh()', 600000);">
function Refresh()Вот как-то так.
{
if (CheckCondition('FormId') == true && CheckCondition('InputId') == true)
{
ajaxrequest('index.php', 'OutputObjectId'); /* Это фейковая функция, просто для примера */
}
setTimeout('Refresh()', 600000);
}
function CheckCondition(ObjectId)
{
var Object = document.getElementById(ObjectId);
if (Object != null) return false;
return true;
}
Спустя 19 дней, 6 часов, 4 минуты, 13 секунд (25.08.2010 - 14:11) zvezda_t написал(а):
linker
Большое спасибо!
Сделала) всё работает)))
Большое спасибо!
Сделала) всё работает)))
_____________
Что ты сделал сегодня - для завтра?
"Приидите ко Мне вси труждающиеся и обремененнии и Аз упокою вы, возмите иго Мое на себе и научитеся от Мене яко кроток есмь и смирен сердцем и обрящете покой душам вашим, иго бо Мое благо и бремя Мое легко есть."(Мф. 11:28-30)