zoukankan      html  css  js  c++  java
  • phpcms 下载数统计

    phpcms系统自带阅读数,评论数,下载数需要修改一下,

    前端代码:

    <a href="{$download_url}" id="download" target="_blank">立即下载</a>
    <img src="/common/img/a1.png" title="下载数" /><span id='downcount'></span>
    

      

      

    前端js代码:

    /***统计获取下载数***/
    	function downcount(act){
            $.ajax({
                    type:"GET",
                    url:"{APP_PATH}api.php",
                    data:"op=dcount&id={$id}&modelid={$modelid}&act="+act,
                    async:true,
                    success:function(data){
                    if( act != "set" ){
                            var arr=data.split(",");
                            $("#downcount").html(arr[0]);
                           
                            }
                    }
              });
    	}
    
           $(document).ready(function(){
              downcount("get");
              $("#download").click(function(){
                  downcount("set");
              });
    	});
    

      

    注意js前面引入jquery库,类名要对应,然后根目录api文件加入dcount.php,内容如下

    <?php
    defined('IN_PHPCMS') or exit('No permission resources.'); 
    /**
     * 下载统计
     */
    $db = '';
    $db = pc_base::load_model('hits_model');
    if($_GET['modelid'] && $_GET['id'] && $_GET['act']) {
    	$modelid = intval($_GET['modelid']);
    	$hitsid = 'c-'.$modelid.'-'.intval($_GET['id']);
    	if($_GET['act']=="set"){
    		hits($hitsid);
    	}
    	$r = get_count($hitsid);
    	if(!$r) exit;
        extract($r);
        echo $downcount;
    }
    
    /**
     * 获取下载次数
     * @param $hitsid
     */
    function get_count($hitsid) {
    	global $db;
        $r = $db->get_one(array('hitsid'=>$hitsid));  
        if(!$r) return false;	
    	return $r;	
    }
    
    /**
     * 下载次数统计
     * @param $contentid
     */
    function hits($hitsid) {
    	global $db;
    	$r = $db->get_one(array('hitsid'=>$hitsid));
    	if(!$r) return false;
    	$downcount = $r['downcount'] + 1;
    	$sql = array('downcount'=>$downcount);
        return $db->update($sql, array('hitsid'=>$hitsid));
    }
    
    ?>
    

      

      

    注意数据库hits加downcount字段,基本就可以达到效果了。

    本文参考此文,http://bbs.phpcms.cn/thread-461933-1-1.html

  • 相关阅读:
    centos7.6 使用yum安装mysql5.7
    解决hadoop本地库问题
    docker-compose 启动警告
    docker 安装zabbix5.0 界面乱码问题解决
    docker 部署zabbix问题
    zookeeper 超时问题
    hbase regionserver异常宕机
    (转载)hadoop 滚动升级
    hadoop Requested data length 86483783 is longer than maximum configured RPC length
    zkfc 异常退出问题,报错Received stat error from Zookeeper. code:CONNECTIONLOSS
  • 原文地址:https://www.cnblogs.com/danche/p/5787816.html
Copyright © 2011-2022 走看看