Валентин Попов, Не надо вообще сравнивать время сервера, вы делаете акцию на сайт, верно? таки защиты на стороне клиента здесь с головой хватит, ибо ничего не мешает человеку просто открыть браузер в режиме инкогнито, и быть для вашего сайта уже новым пользователем.
По основному вопросу - вы делаете переменную с признаком успел ли пользователь, давайте назовём её timely, чтобы не задевать транслитом нежные глаза пользователей)
В момент загрузки проверяете кукисы (опять же не знаю, используете вы библиотеку для работы с куки, или работаете напрямую), и если кукис не установлен - даете переменной признак true. иначе - false.
После чего ставите интервал на ожидание функцией
setInterval(function()
{
// тут вы устанавливаете значения:
// timely = false
// тут вы устанавливаете куки, говорящие, что шанс упущен.
}, <b>здесь_интервал_через_какое_время_истекает_шанс</b>)
И в принципе, профит. Остается взять какой-нибудь симпатичный таймер обратного отсчета, и настроить на время, сейчас + здесь_интервал_через_какое_время_истекает_шанс
PS: самое важное то и забыл. и добавляете при отправке вашего ajax-запроса в данные ещё и переменную timely
riot26, извиняйте, не все на этом форуме знают английский, и когда пишешь нормальные названия переменных - возникают дополнительные вопросы. Или предлагаете узнавать у человека, шпрехен ли он, а потом только варианты накидывать?)
Всё проще, делаешь глобальную переменную "uspel = true", делаешь setTimeout(function(){uspel=false}, время_в_милисекундах) и при отправке формы отправляешь ещё и переменную uspel.
JhaoDa, Тоже весьма правильное решение, пока перечитываешь и ещё раз запоминаешь, и то, что было недопонято осваивается. Но как я и сказал - забыл о существовании такой возможности в принципе) В любом случае, спасибо вам большое!
Спасибо. Моя беда как раз в том, что я прочел документацию первый раз целеком подряд, потом ещё раз но уже с практикой. И в голове образовалась каша, которая мешает правильным мыслям) я читал про ленивую загрузку через точку, но забыл. стыдоба, каюсь. Но спросить иногда проще, чем обдумать 20 разных вариантов, и в итоге не вспомнить нужного.
xonar, чтобы работало при смене браузера - кука заносится в хранилище флеша.. флеш по умолчанию сейчас отключен на подовляющем количестве браузеров, соответственно, либа полезна исключительно для защиты от очистки кукисов)
xonar, Тут сложнее уже, если пользователь логинется на сайте - нет проблемы в момент логина ему выдавать какую-нибудь куку с прошлого устройства, если пользователь просто гость - единственный оставшийся признак - это ip, но ip не гарантирует того, что это не его брат/друг/сосед
Максим Федоров, Дело вкуса, но когда и спросить не у кого, и сам только начинаешь - проще свести технологии к минимуму, тогда проще и вопрос сформулировать, и самому к выводу прийти, что могло привести к ошибке.
Bars1803, Тогда правильно начать с маленького скромненького скрипта index.php с содержимым <? phpinfo(); ?>, после чего настроить виртуальные хосты апача, и окружение в целом. И только после этого заливать сайт. таким образом вы снимаете с себя вопрос "эта ошибка вызвана конфигурацией сервера, или сайта"