关闭

【转载】Ecshop中根据评论等级不同计算出百分比

467人阅读 评论(0) 收藏 举报
分类:

首先先看一下效果图,根据不同评论计算百分比:

说一下原理:
后台:计算各个类型的评论总和和全部评论。
后台函数代码:
/*统计评论*/
function getcccount($goods_id){
 $sql="SELECT count(id_value) FROM ". $GLOBALS['ecs']->table('comment') ." WHERE id_value = $goods_id AND comment_rank!=0  and select_type=0 and parent_id=0";
 $count = $GLOBALS['db']->getOne($sql);
 if(empty($count)){
  return '没有评论';
 }
 else 
 {
 $sql="SELECT count(id_value) FROM ". $GLOBALS['ecs']->table('comment') ." WHERE id_value = $goods_id AND comment_rank =5 and select_type=0 and parent_id=0";
 $count5 = $GLOBALS['db']->getOne($sql);
 
 $sql="SELECT count(id_value) FROM ". $GLOBALS['ecs']->table('comment') ." WHERE id_value = $goods_id AND comment_rank =1 and select_type=0 and parent_id=0";
  
 $count1 = $GLOBALS['db']->getOne($sql);
 
 $sql="SELECT count(id_value) FROM ". $GLOBALS['ecs']->table('comment') ." WHERE id_value = $goods_id  and select_type=0 and parent_id=0 AND comment_rank BETWEEN 2 AND 4";
 $count3 = $GLOBALS['db']->getOne($sql);
 
 $hb =percent($count5,$count);
 $zb =percent( $count3,$count);
 $cb =percent($count1,$count); 
 $arr=array();
 $arr['all']=$count;   //统计全部评论
 $arr['hao']=$count5;  //统计好评个数
 $arr['zhong']=$count3;  //统计中评个数
 $arr['cha']=$count1 ;  //统计差评个数
 $arr['hb']=$hb; //好评百分比
 $arr['zb']=$zb; //中评百分比
 $arr['cb']=$cb; //差评百分比
 return $arr;
 }
}

/*百分比计算函数
*$p 被除数
*$t 总个数
*/
function percent($p,$t){
 return sprintf('%.2f%%',$p/$t*100);
}

前台模板:根据后台获取的百分的不同,来控制红条的宽度。

先拿来看看,明天再改
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:44002次
    • 积分:1137
    • 等级:
    • 排名:千里之外
    • 原创:74篇
    • 转载:2篇
    • 译文:0篇
    • 评论:2条
    文章分类
    最新评论