用tp5写了个浏览量的功能,每次网页刷新就+1,本地测试正常,但是放到线上每次刷新+N

用tp5写了个浏览量的功能,每次网页刷新就+1,线下本地测试正常,放到线上,使用服务器的浏览器测试也是+1, 线下访问线上的就变成每次刷新+4,用静态变量测试结果执行次数也就执行了一次而已,排除代码Bug 请问是哪里除了问题??

附上代码:

/**
     * 读取详情
     * 浏览+1
     */
    public function detail($id='',$browse=true,$sql=false)
    {
        if (empty($id)) goto end;
        $data = $this->alias('a','left')
        ->field('a.id,a.tid,a.title,a.keyword,a.introduce,a.content,a.img,a.addtime,a.browse,u.name user_name,t.name type_name')
        ->join('tags t','t.id=a.tid','left')
        ->join('user u','u.id=a.uid','left')
        ->where(array('a.id'=>$id,'a.status'=>2)) 
        ->find();
        // dp($this->getLastSql());
        if (true == $sql) return $this->getLastSql();
        end:
        if (empty($data)) return null;
        //浏览+1
        if (true == $browse) $this->where('id',$data['id'])->setInc('browse');

        $data = $data->toArray();
        $data['user_name'] ? : $data['user_name'] = 'admin';
        return $this->cotm($data);
    }

只有这个操作里面写了 浏览+1的代码

if (true == $browse) $this->where('id',$data['id'])->setInc('browse');

找到原因了 看了日志 发现 程序 被执行了四次
但是为什么会被执行四次呢??

缥缈止盈
浏览 1494回答 4
4回答

GCT1015

有看过服务器日志么,是否确定测试时间段没有其他访问请求?

慕丝7291255

可能你的服务器有点卡,刷新了一次请求了多次接口,你可以设置一个时间间隔。

弑天下

做好js防抖或节流
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python