Вставьте отметку времени в вашу базу данных, затем, когда вы принимаете ввод от пользователя, возьмите отметку времени и проверьте, меньше или равно ли его время последней публикации плюс X секунд (или газ, возможно, было бы лучше)к текущей отметке времени.
Вот пример псевдокода:
X = post_limit;
if((last_post_time + X) <= current_time)
{
allow_to_post;
}
else
{
do_not_allow_to_post;
}
Вот фрагмент кода, который я использовал в своем программном обеспечении для работы с изображениями, который также может указать вам правильное направление:
<?php
$ip = $_REMOTE['SERVER_ADDR']; // client's IP address
$sql = "SELECT time FROM spam WHERE ip = '$ip' LIMIT 1";
$query = mysql_query($sql);
if(0 < mysql_num_rows($query))
{
while($result = mysql_fetch_assoc($query))
{
if($result['time'] < $time)
{
$sql = "DELETE FROM spam WHERE ip = '$ip'";
$return_val = mysql_query($sql);
}
}
}
else
{
$sql = "INSERT INTO spam (ip,time) VALUES ('$ip','$time');";
$return_val = mysql_query($sql);
}
?>