【问题标题】:mysql insert time [closed]mysql插入时间[关闭]
【发布时间】:2012-12-13 23:58:13
【问题描述】:

我正在制作一个评论框。但我希望当人们点击提交评论时,他们会与我记录的其他信息一起登录 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时间冒号就会得到用户名、评论和他发送评论的时间。

【问题讨论】:

  • 问题是时间的代码是什么?或者以便插入时间?
  • 在您的数据库中创建一个名为timestamp 的字段并将默认值设置为CURRENT_TIME 这就是您要做的一切!

标签: php mysql database time


【解决方案1】:

您需要在数据库中添加日期时间列。让我们将其命名为 'time_posted' 然后当您插入一行时,您可以这样做:

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

当您检查用户最多提交时,假设一分钟内有 1 条评论,您可以这样做:

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

所以你会得到他在最后一分钟发布的消息数量,这样你就可以阻止他发布更多消息。

【讨论】:

    【解决方案2】:

    运行:

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

    新查询:

    SELECT * FROM `comment` WHERE
      `username` = '$username' ORDER BY `timestamp` DESC LIMIT 1
    

    【讨论】:

    • 是的。这更简单;)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-12-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-08
    相关资源
    最近更新 更多