0

显然,我是 php 新手。我为网页创建了一个简单的页面计数器来监控查看次数。我已经建立了一个包含三列(id、page、views)的 mySQL 数据库。并且在相关页面上包含了以下脚本,但是..不是将计数增加 1,而是每次将计数增加 2,我不知道为什么。任何人都可以帮忙吗?

   <?php
    $page= 'index';

    include('solrx_scripts.php');

    $sql="SELECT * FROM view_log WHERE page = 'index'";
    $result=mysql_query($sql)  or die(mysql_error()); 
    while ($row=mysql_fetch_array($result)){

        $previous = $row['views'];
    }
    $new_count = $previous + 1;

    mysql_query("UPDATE view_log SET views=$new_count WHERE id = 'index'");

    exit;
    ?>
4

3 回答 3

3

尝试在 SQL 而不是 PHP 中进行添加

mysql_query("UPDATE view_log SET views=views+1 WHERE id = 'index'");

请记住,搜索引擎蜘蛛也会导致查看次数被更新。像谷歌分析这样的东西会给你更可靠的统计数据。

于 2012-12-10T23:09:48.073 回答
1

你只需要一行:

mysql_query("UPDATE `view_log` SET `views` = `views` + 1 WHERE `id` = 'index'");

并且请不要使用mysql php函数,因为它已被弃用,您将来肯定会遇到很多问题

于 2012-12-10T23:12:53.083 回答
1

让它变得像这样不需要选择如果你总是想加 1

$page= 'index';

include('solrx_scripts.php');

mysql_query("UPDATE view_log SET views=views+1 WHERE id = 'index'");

exit;

如果它仍然增加 2,则意味着 solrx_scripts.php 或之前有一些东西。

于 2012-12-10T23:12:58.917 回答