Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / [PHP] Форма показывается в определнное время / 25 сообщений из 28, страница 1 из 2
22.02.2014, 02:22
    #38569262
maccen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Форма показывается в определнное время
Вопрос, не знаю как реализовать такое:

Нужно раз в пол часа чтобы на сайте появлялась форма с двумя полями:
- поле ввода и кнопка отправить, после того как ввели данные и отправили их на почту (или в базу записали).
- чтобы снова шел отсчет времени, "форма появится через (столько-то) минут"

Всем заранее спасибо за подсказки и помощь!
...
Рейтинг: 0 / 0
22.02.2014, 03:02
    #38569266
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Форма показывается в определнное время
maccenраз в пол часаНе понятно, откуда мерить.

Вот я открыл страницу - нет формы. Подождал пол-часа - форма появилась. А потом пропала. А потом опять появилась. А обновил страницу, не дождавшись формы - опять получасовой отсчет запускаем.

Или показывать форму только если страница открывается, предположим, на десятой и на сороковой минуте по серверному времени.

Или еще варианты...



maccenне знаю как реализоватьЧто именно не знаете - как форму написать, как получить данные от формы, как записать данные в базу, как отправить письмо, что-то еще?
...
Рейтинг: 0 / 0
22.02.2014, 03:26
    #38569268
maccen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Форма показывается в определнное время
Время берется серверное, просто сутки разбиваются по пол часа и все
...
Рейтинг: 0 / 0
22.02.2014, 03:52
    #38569274
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Форма показывается в определнное время
Что-то вроде такого
Код: php
1.
2.
3.
if(date("i") % 30 < 3) {
 // тут показ формы
}
...
Рейтинг: 0 / 0
22.02.2014, 13:43
    #38569395
deblogger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Форма показывается в определнное время
setTimeout()
...
Рейтинг: 0 / 0
22.02.2014, 13:44
    #38569396
deblogger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Форма показывается в определнное время
Потому что пхп тут не стоял. Юзер может открыть и не запрашивать ничего больше. Для пхп он пропал.
...
Рейтинг: 0 / 0
22.02.2014, 14:21
    #38569416
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Форма показывается в определнное время
debloggersetTimeout()И как оно поможет зацепить серверное время?
...
Рейтинг: 0 / 0
22.02.2014, 14:32
    #38569424
deblogger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Форма показывается в определнное время
vkle,

Серверное время это относительная величина, грубо говорят относительно Гринвича. Следовательно передав его однажды, лет 5 назад, можно еще 5 лет напоминать юзеру чтоб он не замерз пользуясь унутренними часами клиента.
...
Рейтинг: 0 / 0
22.02.2014, 14:41
    #38569428
deblogger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Форма показывается в определнное время
В онлайн гамах это обычное дело, кстати. Может автор гаму пишет?

Сервер вставляет в хтмл время, скажем Т_С, скрипт в браузере получает время клиента Т_К. Важно чтобы между этми событиями не прошло много времени. Скрипт получает смещение Т_С + -Т_К. Теперь скрипт знает сколько времени у клиента относительно сервера. Находит начало суток, делит на 24, затем по модулю и получает первый интервал для setInterval. Затем setInterval тупо выставляет себя на будущее через 30 минут и все.
...
Рейтинг: 0 / 0
22.02.2014, 14:43
    #38569429
deblogger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Форма показывается в определнное время
В смысле первый раз setTimeout, а потом чего мелочиться - setInterval и забыли.
...
Рейтинг: 0 / 0
22.02.2014, 14:45
    #38569431
deblogger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Форма показывается в определнное время
Редактуры нет.

В смысле сетИнтервал просто запускается через сетТаймаут.
...
Рейтинг: 0 / 0
22.02.2014, 14:46
    #38569433
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Форма показывается в определнное время
deblogger,

В принципе, так оно и есть, если только не считать что пользователь волен творить со своими часами все, что ему вздумается. С сервера передали время, пользователь подкрутил свои часы -> задача не решена. Отсчет времени на клиенте до показа формы действительно уместен. Но от шаловливых ручек можно избавиться только серверной проверкой.
...
Рейтинг: 0 / 0
22.02.2014, 14:50
    #38569434
deblogger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Форма показывается в определнное время
Подкрутил в период между передачей серверного времени и определения клиентского?

Инициализаци (сверка часов) происходит один раз и очень быстро. Никакой Вуди Вудпеккер не успеет. Затем все идет по тикам - хоть закрутись.
...
Рейтинг: 0 / 0
22.02.2014, 14:50
    #38569435
deblogger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Форма показывается в определнное время
Если бы ваша идея имела место быть, он-лайн игр с имитацией реального времени не было бы.
...
Рейтинг: 0 / 0
22.02.2014, 14:51
    #38569436
deblogger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Форма показывается в определнное время
Собственно Вуди и не бежал. Пусть крутит - после инициализации уже по барабану сколько времени у клиента.
...
Рейтинг: 0 / 0
22.02.2014, 14:55
    #38569437
deblogger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Форма показывается в определнное время
Нашел

Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
var Time = {
    Client: 0,
    Server: 0,
    TimeShift: 0,
    UpdateInterval: null,
    SyncRequest: null,
    init: function (a) {
        this.Client = Math.round(new Date().getTime() / 1000);
        this.Server = a;
        this.TimeShift = this.Client - this.Server
    },
    update: function () {
        Time.Server++;
        Time.Client++
    }
};



остался файлик с гамы для которой я читы писал.
...
Рейтинг: 0 / 0
22.02.2014, 14:57
    #38569438
deblogger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Форма показывается в определнное время
Да блин. ну вот, а в а передается значение из строки которую постит сервер прямо в хтлм, в тег script, где вызывается Time.init(тут timestamp)
...
Рейтинг: 0 / 0
22.02.2014, 15:01
    #38569440
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Форма показывается в определнное время
deblogger,

Так Вы предлагаете каждые несколько секунд запрашивать время с сервера? Ну, чтоб никакой юзер подкрутить не успел.
...
Рейтинг: 0 / 0
22.02.2014, 15:06
    #38569447
deblogger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Форма показывается в определнное время
vkle,

Вы не понимаете что такое время или баттхерт, или одно из двух.

Идеала конечно не будет, за неделю или за месяц может накопиться расхождение в минуту или даже больше. Но это при условии что юзер за неделю или за месяц ни разу не обратиться на сервер. То есть можно пренебречь.
...
Рейтинг: 0 / 0
22.02.2014, 15:09
    #38569451
deblogger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Форма показывается в определнное время
Чтобы скрутить внутренний счетчик надо быть программистом. В расчете на программистов программировать смысла нет. Если программист залезет в дом, ему уже не надо счетчики крутить, он просто начнет посылать на сервер через ваш же аякс всякую лабуду.
...
Рейтинг: 0 / 0
22.02.2014, 15:13
    #38569458
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Форма показывается в определнное время
debloggervkle,

Вы не понимаете что такое время или баттхерт, или одно из двух.С первым хорошо знаком. А вот по части понимания второго смело оставляю пальму первенства за Вами.
...
Рейтинг: 0 / 0
22.02.2014, 15:22
    #38569462
deblogger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Форма показывается в определнное время
Я тут не первый день и помню читателя оппонента. Думал объяснять не придется, все ж очевидно.

Кстати, разница между сервером и клиентом колебет только в случае когда нас колебет время суток клиента, а нас оно вообще не колебет - в смысле мы и ночью ему выкатим мессагу с воплями ты про нас забыыыыыыллл! Следовательно считаем только время сервера.
...
Рейтинг: 0 / 0
22.02.2014, 15:27
    #38569464
deblogger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Форма показывается в определнное время
[quot vkle]debloggervkle,

С первым хорошо знаком.

Тогда что не ясно в таком простом деле?

Получив Х мы вычисляем только первый этап - до начала регулярных вылетов. Затем тупо через каждые 30 минут и все.

Если время суток не важно, то время клиента вообще не учитываем. Но если бы и учитывали то юзеру бы не удалось обмануть скрипт переведя стрелки, потому что скрипт не запрашивает его время после инициализации внутренних тиков. Хоть на 1970 год юзер переведет часы - в скрипте так и останется 2014.
...
Рейтинг: 0 / 0
22.02.2014, 15:29
    #38569467
deblogger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Форма показывается в определнное время
А если юзер переведет на 1970, а потом обновит страницу, то во-первых выкосит все куки, а во-вторых ничего не добьется. Скрипт просто учтет смещение в 35 лет и будет тикать как тикал и выкатывать объявления каждые 30 минут.
...
Рейтинг: 0 / 0
22.02.2014, 15:30
    #38569468
deblogger
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
[PHP] Форма показывается в определнное время
В смысле выкосит на следующем этапе, когда вернет часы в норму.
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / [PHP] Форма показывается в определнное время / 25 сообщений из 28, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]