0
私はLaravel 5.2を使用しています。
記事の閲覧時間を記録するにはどうすればよいですか?
stackoverflow.comの閲覧回数、
私はリフレッシュと同じように、時間は、それを行うにはどのよう
が変化しないのだろうか?記事の閲覧時間を記録する方法は?
私はLaravel 5.2を使用しています。
記事の閲覧時間を記録するにはどうすればよいですか?
stackoverflow.comの閲覧回数、
私はリフレッシュと同じように、時間は、それを行うにはどのよう
が変化しないのだろうか?記事の閲覧時間を記録する方法は?
私は二つの列(article_idに、ビュー)を持つ新しいテーブルを作成することをお勧めdatabseを使用している場合:
CREATE TABLE `stats_articles` (
`article_id` INT NOT NULL,
`views` INT DEFAULT 0
)ENGINE=INNODB;
あなたの記事のテーブルにidカラムにリンクする外部キーでなければなりませんのarticle_idは
次に、あなたの記事を表示する場所で、テーブルの値を増やすSQLを実行する必要があります:
INSERT INTO `stats_articles` SET views=1 WHERE article_id=[ARTICLE_ID] ON DUPLICATE KEY UPDATE views=views+1;
このクエリは、stats_articles
にviews=1
という新しいレコードを挿入しようとしています。すでに存在する場合は、views
の値が増えます。
現在、記事へのヒット件数をカウントするか、クッキーまたはセッション数で制限するかを決定する必要があります。
これを行うには、db値を増やす前に、ユーザーが既にこの記事を見ているかどうかを確認してください。この疑似コードのようなもの:
if (!cookie or seession for this [article_id] not exists) { // User see this article for a first time
increase db value
} // if yes, do nothing
ミドルウェアを使用します。セッションで何らかの変数が設定されているかどうか確認してください。そうでない場合は、変数を追加してビューとして数えます。 –