Показать сообщение отдельно

  #19  
Старый 23.02.2008, 14:29
Meanor
Познающий
Регистрация: 09.09.2007
Сообщений: 66
Провел на форуме:
188412

Репутация: 41
По умолчанию

Цитата:
Сообщение от Jes  
я придумал

swf флэшку , там onMouseMove = один вызов xml.load( script.php?check=хеш который флэшка подсчитает : время сервера + 10 секунд )
в скрипте сравниваем 10 хешей ( тек время , + сек , +2 ... ) , ставим в сессию типа неБот=true ...

upd: хотя флэшку надо активизировать , поэтому актуальнее сделать саму кнопку submit на флэш , там on(RollOwer){ _root.MouseMoved=true; } и onClipEvent(mouseDown)
{
if(_root.MouseMoved)
{
_getUrl( GoodUrl + Обязательно проверка)
}else{
_getUrl( BadUrl);
}
upd 2:
или вызыавть "check.php?currentTime=" + date.GetTime() + "&CheckCode=" + Md5("trash" + date.GetTime() +trash);

...имхо удобно что пользователю не нужно ничего вводить ...
Омг, мозг съеден %)

На самом деле, теоретически, можно сделать защиту от спама вообще без капчи, т.к. 95-99% всего спама отсылается роботом, который очень зависит от имен элементов форм в форме отправки сообщения. Можно занести в сессии временные названия форм, и теперь, в зависимости от этого выводить рандомные имена типа Fqhxf7éhf. Пользователю пофиг, он не видит, а вот роботу будет облом %). В самом скрипте вызываем пременную таким вот образом : $_POST[$_SESSION[name]] (хотя не тестил, может и не работать...)
 
Ответить с цитированием