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

原创 2013年12月04日 14:29:04

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

说一下原理:
后台:计算各个类型的评论总和和全部评论。
后台函数代码:
/*统计评论*/
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);
}

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

先拿来看看,明天再改

网站社会化评论插件推荐之“畅言”

“畅言”。。你什么都说,你试试..迟早都会被
  • panfanglin
  • panfanglin
  • 2014年05月30日 23:43
  • 1964

手动调用Ecshop分页函数对数据进行分页

在做对ecshop二次开发的过程中,难免避免不了手动对一些数据进行读取显示,其中不得不涉及到的就是分页功能,当然我们可以使用第三方的分页类对其进行分页功能的实现,这样的类很多也很杂,笔者在google...
  • fgdfgasd
  • fgdfgasd
  • 2013年11月10日 14:47
  • 6964

ecshop不同城市显示不同商品之后台前端根据ip获取城市并屏蔽商品

1、在lib_base.php添加方法get_ip_area() //根据ip获取地区 2015-9-9 function get_ip_area() {     $ip = real_ip();  ...
  • tang05709
  • tang05709
  • 2015年09月10日 17:55
  • 767

ecshop中实现不同等级的会员显示不同的商品价格

1.建三个等级会员 2.upload/includes/lib_goods.php 中  查找{                     $type_array[$key] = array();   ...
  • w15875510692
  • w15875510692
  • 2014年03月20日 17:56
  • 683

Ecshop数据库表和字段的说明

请点击左上角‘目录’查看更方便 ecs_account_log 用户帐号情况记录表,包括资金和积分等log_id mediumint 自增ID号 user_id mediumint 用户登录后保存在s...
  • sinat_37390744
  • sinat_37390744
  • 2017年03月26日 22:05
  • 3751

hadoop编程实战——日志分析

上传日志文件到hadoop的dfs当中去一、根据上述日志文件,计算该天的独立ip数,pv数(注意要筛选日志,并非每条记录都要统计),被传输页面的总字节数1、将日志信息分为8个字段,创建指标对象KPIi...
  • u011118321
  • u011118321
  • 2017年04月03日 01:20
  • 283

ecshop AJAX-POST 多维JSON 数据给PHP处理的方法

function commit(){ var uid =0; if ( document.getElementById("user_useridname").checked){ uid =...
  • oqqbob123456
  • oqqbob123456
  • 2014年04月26日 19:43
  • 943

ecshop装完后 报错警告问题更改总结

Ecshop安装后,一堆错误,咋整? PHP5.6.6上运行 ecshop 2.7.3常见问题整合 时间:2015-03-13 13:05来源:未知 作者:最模板 点击:2792次 ecshop...
  • qq1355541448
  • qq1355541448
  • 2016年06月08日 15:50
  • 814

csdn如何转载别人的文章

csdn如何转载别人的文章
  • stonesing
  • stonesing
  • 2016年08月25日 17:07
  • 2087

csdn如何转载别人的文章

转载地址:http://blog.csdn.net/jiangping_zhu/article/details/18044109 1、找到要转载的文章,用chrome浏览器打开,右键选择审查元...
  • dlhlSC
  • dlhlSC
  • 2016年08月19日 16:51
  • 5054
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:【转载】Ecshop中根据评论等级不同计算出百分比
举报原因:
原因补充:

(最多只允许输入30个字)