繁体   English   中英

跟踪页面视图并存储在MySQL中的最佳方法

[英]Best Way To Track Page Views and store in MySQL

我目前正在开发一个文章驱动的网站,并且想知道跟踪网页点击量的最佳方法,以便我可以按照“最受欢迎的文章”或“最受欢迎的文章”显示内容。 我通过$ _GET在单个PHP页面上显示文章(例如article.php?id = 2)。 我在某处读到INSERT INTO是必经之路,我尝试这样做:

$page_views = $conn->query("INSERT INTO blog_posts (views) VALUES (views = views+1");

las,这行不通。

总而言之,我希望能够:

  • 每次有人登陆到该页面(例如,articles.php?id = 3)时,在特定ID的页面浏览量上加1(而不仅仅是article.php)

提前致谢。 (对不起,如果我还不够清楚的话。如果您想澄清一下,请问。)

您是否打算为计数保留单独的表格? 如果是这样的话,

|page_views   |
|blog_id|count|
+-------+-----+
|  1    | 12  |
|  2    | 33  |

其中blog_id是具有唯一强制性的主要键

您可以使用重复键创建不存在的行,如果存在则更新计数

("INSERT INTO page_views (blog_id,count) VALUES ($blog_id,1) ON DUPLICATE KEY UPDATE count = count + 1") 

使用更新查询来增加计数器。

UPDATE blog_posts SET views = views+1 WHERE id = 'SOME NUMBER'

您的blog_posts表中的每一行都有一个数字views字段和一个id

SQL小提琴: http ://sqlfiddle.com/#!2 / 0915b / 1

为什么不尝试使用update语句:

"UPDATE blog_posts SET views = views+1 WHERE id = $id"

您的插入语句将在数据库中添加新行,可能不是您想要的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM