-3

コメント欄作ってます。しかし、人々がコメントの送信をクリックすると、ログに記録した他の情報と一緒にmysqlにログインするようになります。私が使用するコードは次のとおりです。

if(isset($_POST['btnRegister'])) //===When I will Set the Button to 1 or Press Button to register
{
$query = mysql_query("SELECT * FROM comment WHERE username='$username'");
if(mysql_num_rows($query) > 5 ){
echo "Slow down! you can only send 5 comments a day";

}else{

mysql_query ("insert into comment(username,comment)values('$username','$comment')");
header('location: succes_comment.php');
}
}
?>

したがって、ユーザーがそれをクリックすると、mysql の time colonnum がユーザー名、コメント、およびコメントを送信した時刻を取得します。

4

2 に答える 2

2

データベースに日時列を追加する必要があります。「time_posted」という名前を付けましょう次に、行を挿入するときは、次のようにします。

 insert into comment(username,comment, time_posted)values('$username','$comment', NOW())

そして、ユーザーが最大で 1 分間に 1 件のコメントを送信することを確認する場合は、次のようにします。

  SELECT username FROM comment WHERE username='$username' and time_posted = DATE_SUB(NOW(), INTERVAL 1 MINUTE)

そのため、彼が最後の 1 分間に送信したメッセージの量を取得できます。これにより、彼がそれ以上投稿するのを防ぐことができます。

于 2012-12-14T00:09:23.930 に答える
0

走る:

ALTER TABLE `comment`
  ADD `timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, COMMENT='';

新しいクエリ:

SELECT * FROM `comment` WHERE
  `username` = '$username' ORDER BY `timestamp` DESC LIMIT 1
于 2012-12-14T00:12:14.160 に答える