Идея с задержкой:
— Устанавливаем сессию.
— Показываем капчу, время запроса капчи сохраняется на сервере.
— Если форма с (неправильным) ответом на капчу приходит менее чем через некоторый промежуток времени, выводим пользователю страничку с формой и ошибкой таймаута. Если js поддерживается, через таймаут прогружаем аяксом новую капчу, если нет — рефрешим страницу. Нормальный пользователь не заметит, боты пойдут лесом, если интервал, скажем, 3 секунды.
Да и сейчас отклеены через одну, а это всего два варианта для каджой типовой лампочки… А что будет, если отклеивать кучкой, не показали. Врядли будет покрасивее.
ASCII-баннеры ;)
— Устанавливаем сессию.
— Показываем капчу, время запроса капчи сохраняется на сервере.
— Если форма с (неправильным) ответом на капчу приходит менее чем через некоторый промежуток времени, выводим пользователю страничку с формой и ошибкой таймаута. Если js поддерживается, через таймаут прогружаем аяксом новую капчу, если нет — рефрешим страницу. Нормальный пользователь не заметит, боты пойдут лесом, если интервал, скажем, 3 секунды.
А потом дата-центрам раз в месяц приносить в жертву невинную деву…