在__construct()函数

时间:2015-11-21 15:03:54

标签: php mysql oop

我有一个插入查询(用于增加每个帖子的已查看的数量)。现在我想知道,在__construct()中编写该查询是正常的吗?这不错吗? (因为我在某处读到这不是一个好主意)

class classname {

    private $post_id;
    public function __construct($post_id) {

        $this->post_id = $post_id;

        INSERT IGNORE INTO viewed (post_id, username) 
                           VALUES ($this->post_id, $_SESSION['username']);
    }

}

1 个答案:

答案 0 :(得分:0)

这取决于您如何创建此类的实例。由于您要跟踪博客帖子的视图,因此需要确保以下内容 -

  1. 如果查看博客帖子,则仅为每个用户创建此类的一个实例
  2. 创建同一个类的多个实例将导致跟踪错误的数字。

  3. 您还可以在将数据插入数据库之前进行检查,无论它是否已被跟踪。