php - 如何根据 MySQL 的总点击次数排序链接显示?

标签 php mysql hyperlink phpmyadmin

我有一个包含外部网站链接的网页。如何根据页面总点击次数更改链接的顺序?例如,点击次数最多的链接在列表的顶部,点击次数第二多的链接在列表中排名第二,等等。

我在 phpmyadmin 数据库表中有所有链接,所有行的 page_count 列当前设置为 0。我猜我想弄清楚如何在单击相应链接时将 1 添加到 page_count 单元格?然后如何根据 page_count 数字对链接的显示进行排序?

最佳答案

我将从显示链接并将它们的数据库 ID 放入 data-id 属性开始,以获得此:

<a href="link_1" data-id="1">
<a href="link_1" data-id="2">
<a href="link_1" data-id="3">

然后,我将使用 jQuery 的 $.ajax() 来增加数据库中的 page_count 值:

$('a').on('click', function() {
    var $this = $(this);

    $.ajax({
        url: 'my_script.php',
        type: 'POST',
        data: {
            link_id: $this.data('id')
        },
        dataType: 'text',
        success: function(response) {
            console.log(response);
        }
    });
});

my_script.php 中,我会根据我的 link_id 变量获取 page_count 的当前状态:

<php

    $clicked_id = $_POST['link_id'];

    /* Based on $clicked_id, use MySQL query to get the current page_count value
    Increase the value by 1
    Use another query to update the page_count value */

    echo "Success!";

?>

注意:我没有测试它,但这是我尝试实现目标的方式。

关于 jQuery 的 $.ajax() 的更多信息:http://learn.jquery.com/ajax/

关于php - 如何根据 MySQL 的总点击次数排序链接显示?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23859693/

相关文章:

php - 从 PHP 中的货币字符串中获取数值

php - Facebook API - 发布到用户墙

javascript - 在 PHP 中获取 MySQL DateTime 到 JavaScript 中的秒

php - 放置文本绝对不重叠

php - 在 php 代码运行之前显示 html

php - 结果 "10.00"未显示在 Mysql 查询中 TOP 结果从 1 到 10

mysql - 将 +1 添加到字段(命中计数器)

html - 为什么此链接不会锚定在左键单击打开的跨度周围?

java - Google Documents List Api - 没有 feed.getNextLink() 的分页结果

html - 使用 Microsoft Edge 中的 HTML 超链接打开映射的 Windows 资源管理器文件夹