Вам нужен только один вызов DATE_ADD()
, чтобы проверить, превышает ли сохраненная дата в date_clicked
плюс 4 секунды текущую метку времени (NOW())
.
SELECT
ip
FROM clicks
WHERE ip = ?
AND DATE_ADD(date_clicked, INTERVAL 4 SECOND) > NOW()
Обновление
Я бы просто добавил, что на практике это работает не очень хорошо.Многие пользователи делятся IP-адресами.В этой системе два пользователя с одним и тем же NAT-адресом в школе или сети не смогут щелкать в течение 4 секунд.Было бы лучше сохранить какое-либо идентифицирующее пользователя значение, например, токен из куки-файла сеанса или ИД пользователя, чем хранить IP-адрес и основывать время ожидания на IP-адресе.