当前位置: 代码迷 >> PHP >> 请问一下更新语句,次数增加疑问!
  详细解决方案

请问一下更新语句,次数增加疑问!

热度:85   发布时间:2016-04-28 16:54:27.0
请教一下更新语句,次数增加疑问!!!
select * from user where names='test';:——sql语句
update user SET num=$nums where names = '$test';:——sql增加次数语句
114:——$nums数据库里的储存次数+1
113:——$row['num']数据库里的储存次数
1:——$row['id']user表里的ID
test:——$row['names']数据库里的test数据

这个是names值的访问点击次数。奇怪的是一个链接点击的话,次数是每次增加2,而这个链接新窗口打开运行,却只增加一次,刷新同样增加一次

这是什么原因呀?哪里出错了?以下是查询更新语句和创建表的内容。

    $test = $_GET['names'];
    $sql = "select * from user where names='$test'";
    $result = mysql_query($sql);
    $row = mysql_fetch_array($result);
    $nums = $row['num']+1;
    mysql_query("update user SET num=$nums where names = '$test'");
    或者:mysql_query("update user SET num=$num+1 where names = '$test'");

    CREATE TABLE IF NOT EXISTS `user` (
    `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
    `names` varchar(15) NOT NULL DEFAULT '',
    `num` tinyint(1) unsigned NOT NULL DEFAULT '0',
    PRIMARY KEY (`id`),
    UNIQUE KEY `names` (`names`)
    ) ENGINE=MyISAM DEFAULT CHARSET=gbk AUTO_INCREMENT=1 ;
    INSERT INTO `user` (`id`, `names`, `num`) VALUES
    (1, 'test', 0);

<a href="?names=test" target=_blank>当前页面 - href="?names=test"</a>
点击页面链接,增加两次次数记录,右键链接新窗口打开运行和当前页面刷新只增加一次记录!很是奇怪,到底我哪做错了?
------解决思路----------------------
看你的描述是比较奇怪,可以这样调试。
<?php
$test = $_GET['names'];
    $sql = "select * from user where names='$test'";
    $result = mysql_query($sql);
    $row = mysql_fetch_array($result);
   file_put_contents('sos.txt', $row['num'].PHP_EOL,FILE_APPEND );
    $nums = $row['num']+1;
   file_put_contents('sos.txt', $nums.PHP_EOL,FILE_APPEND );
    mysql_query("update user SET num=$nums where names = '$test'");
   file_put_contents('sos.txt', 'update'.PHP_EOL,FILE_APPEND );
?>

运行后看看sos.txt,是否3句,如果六句那就表示执行了两次。
------解决思路----------------------
可以确定你的php没有问题,看看那里调用多次了。
看看firebug network那里的请求
  相关解决方案