A5下载 - 努力做内容最丰富最安全的下载站!

A5站长下载站

当前位置:A5下载 > 源码技巧 > Ecshop > ECSHOP 商品评论条件修改——购买过该商品且只能评价一次(购买多少次能评价多少次)

ECSHOP 商品评论条件修改——购买过该商品且只能评价一次(购买多少次能评价多少次)

时间:2015-04-21 15:05作者:zhao人气:96

ECSHOP 商品评论条件修改,修改为购买过该商品多少次,就只能评价多少次。

不需要修改数据库,原理简介:先在后台商店设置->基本->评论条件为只有购买过此商品的会员才能评价

ECSHOP原有机制是只要购买过一次,就可以无限评价。

这里A5源码小编加入了简单判断,判断会员对此商品是否进行过评价,获取评价数,再获取此商品的购物次数。评价数不能大于或等于购物次数。

修改方法如下:

打开comment.php

找到:

case COMMENT_BOUGHT :

if ($_SESSION['user_id'] > 0)

{

$sql = "SELECT o.order_id".

" FROM " . $ecs->table('order_info'). " AS o, ".

$ecs->table('order_goods') . " AS og ".

" WHERE o.order_id = og.order_id".

" AND o.user_id = '" . $_SESSION['user_id'] . "'".

" AND og.goods_id = '" . $cmt->id . "'".

" AND o.order_status = '" . OS_CONFIRMED . "' ".

" AND (o.pay_status = '" . PS_PAYED . "' OR o.pay_status = '" . PS_PAYING . "') ".

" AND (o.shipping_status = '" . SS_SHIPPED . "' OR o.shipping_status = '" . SS_RECEIVED . "') ".

" LIMIT 1";

$tmp = $db->getOne($sql);

if (emptyempty($tmp))

{

$result['error'] = 1;

$result['message'] = $_LANG['comment_brought'];

}

}

注意,这文件有两处一样的,都要修改!

替换为:

case COMMENT_BOUGHT :

if ($_SESSION['user_id'] > 0)

{

$sql = "SELECT COUNT(o.order_id)".

" FROM " . $ecs->table('order_info'). " AS o, ".

$ecs->table('order_goods') . " AS og ".

" WHERE o.order_id = og.order_id".

" AND o.user_id = '" . $_SESSION['user_id'] . "'".

" AND og.goods_id = '" . $cmt->id . "'".

" AND (o.order_status = '" . OS_CONFIRMED . "' or o.order_status = '" . OS_SPLITED . "') ".

" AND (o.pay_status = '" . PS_PAYED . "' OR o.pay_status = '" . PS_PAYING . "') ".

" AND (o.shipping_status = '" . SS_SHIPPED . "' OR o.shipping_status = '" . SS_RECEIVED . "') ".

" LIMIT 1";

$bought_count = $db->getOne($sql);

if (!$bought_count)

{

$result['error'] = 1;

$result['message'] = $_LANG['comment_brought'];

}else{

$sql = "SELECT COUNT(comment_id) FROM " . $ecs->table('comment') .

" WHERE user_id = '" . $_SESSION['user_id'] . "'".

" AND id_value= '" . $cmt->id . "'".

" LIMIT 1";

$comment_count = $db->getOne($sql);

if($comment_count >= $bought_count){

$result['error'] = 1;

$result['message'] = '您已对此商品进行过评价!您可以继续购买以便再次评论。';

}

}

}

注意,这文件有两处一样的,都要修改!

标签ECSHOP,商品,评论,条件,修改,购买,过该,只能,评价

相关下载

查看所有评论+

网友评论

网友
您的评论需要经过审核才能显示

公众号