You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

616 lines
26 KiB

<?php
/**
* 获得指定商品属性详情
*/
function get_attr_value($goods_id,$attr_id)
{
$sql="select * from ".$GLOBALS['ecs']->table('goods_attr')." where goods_id='$goods_id' and goods_attr_id='$attr_id'";
$re= $GLOBALS['db']->getRow($sql);
if(!empty($re))
{
return $re;
}
else
{
return false;
}
}
/**
* 获得指定商品的各会员等级对应的价格
*
* @access public
* @param integer $goods_id
* @return array
*/
function get_user_rank_prices($goods_id, $shop_price) {
$sql = "SELECT rank_id, IFNULL(mp.user_price, r.discount * $shop_price / 100) AS price, r.rank_name, r.discount " . 'FROM {pre}user_rank AS r ' . 'LEFT JOIN {pre}member_price AS mp ' . "ON mp.goods_id = '$goods_id' AND mp.user_rank = r.rank_id " . "WHERE r.show_price = 1 OR r.rank_id = '$_SESSION[user_rank]'";
$res = $GLOBALS['db']->getAll($sql);
$arr = array();
foreach ($res as $row) {
$arr [$row ['rank_id']] = array(
'rank_name' => htmlspecialchars($row ['rank_name']),
'price' => price_format($row ['price'])
);
}
return $arr;
}
/**
* 获得指定商品相关的商品
*
* @access public
* @param integer $goods_id
* @return array
*/
/*function get_linked_goods($goods_id)
{
$sql = "SELECT lg.link_goods_id AS goods_id, g.goods_name, lg.is_double " .
"FROM {pre}link_goods AS lg, {pre}goods AS g " .
"WHERE lg.goods_id = '$goods_id' " .
"AND lg.link_goods_id = g.goods_id ";
if ($goods_id == 0)
{
$sql .= " AND lg.admin_id = '$_SESSION[admin_id]'";
}
$row = $GLOBALS['db']->getAll($sql);
foreach ($row AS $key => $val)
{
$linked_type = $val['is_double'] == 0 ? L('single') : L('double');
$row[$key]['goods_name'] = $val['goods_name'] . " -- [$linked_type]";
unset($row[$key]['is_double']);
}
return $row;
}*/
/**
* 获得购买过该商品的人还买过的商品
*
* @access public
* @param integer $goods_id
* @return array
*/
function get_also_bought($goods_id)
{
$sql = 'SELECT COUNT(b.goods_id ) AS num, g.goods_id, g.goods_name, g.goods_thumb, g.goods_img, g.shop_price, g.promote_price, g.promote_start_date, g.promote_end_date ' .
'FROM {pre}order_goods AS a ' .
'LEFT JOIN {pre}order_goods AS b ON b.order_id = a.order_id ' .
'LEFT JOIN {pre}goods AS g ON g.goods_id = b.goods_id ' .
"WHERE a.goods_id = '$goods_id' AND b.goods_id <> '$goods_id' AND g.is_on_sale = 1 AND g.is_alone_sale = 1 AND g.is_delete = 0 " .
'GROUP BY b.goods_id ' .
'ORDER BY num DESC ' .
'LIMIT ' . C('shop.bought_goods');
$res = $GLOBALS['db']->query($sql);
$arr = array();
foreach($res as $key=>$row){
$arr[$key]['goods_id'] = $row['goods_id'];
$arr[$key]['goods_name'] = $row['goods_name'];
$arr[$key]['short_name'] = C('shop.goods_name_length') > 0 ? sub_str($row['goods_name'],C('shop.goods_name_length')) : $row['goods_name'];
$arr[$key]['goods_thumb'] = get_image_path($row['goods_thumb'], true);
$arr[$key]['goods_img'] = get_image_path($row['goods_img']);
$arr[$key]['shop_price'] = price_format($row['shop_price']);
$arr[$key]['url'] = build_uri('goods', array('gid'=>$row['goods_id']));
if ($row['promote_price'] > 0){
$arr[$key]['promote_price'] = bargain_price($row['promote_price'], $row['promote_start_date'], $row['promote_end_date']);
$arr[$key]['formated_promote_price'] = price_format($arr[$key]['promote_price']);
}else{
$arr[$key]['promote_price'] = 0;
}
}
return $arr;
}
/**
* 获得指定商品的销售排名
*
* @access public
* @param integer $goods_id
* @return integer
*/
function get_goods_rank($goods_id)
{
/* 查询该商品销量 */
$sql = 'SELECT IFNULL(SUM(g.goods_number), 0) ' .
'FROM {pre}order_info AS o, {pre}order_goods AS g ' .
"WHERE o.order_id = g.order_id " .
"AND o.order_status = '" . OS_CONFIRMED . "' " .
"AND o.shipping_status " . db_create_in(array(SS_SHIPPED, SS_RECEIVED)) .
" AND o.pay_status " . db_create_in(array(PS_PAYED, PS_PAYING)) .
" AND g.goods_id = '$goods_id'";
$sales_count = $GLOBALS['db']->getOne($sql);
if ($sales_count > 0){
/* 只有在商品销售量大于0时才去计算该商品的排行 */
$sql = 'SELECT DISTINCT SUM(goods_number) AS num ' .
'FROM {pre}order_info AS o, {pre}order_goods AS g ' .
"WHERE o.order_id = g.order_id " .
"AND o.order_status = '" . OS_CONFIRMED . "' " .
"AND o.shipping_status " . db_create_in(array(SS_SHIPPED, SS_RECEIVED)) .
" AND o.pay_status " . db_create_in(array(PS_PAYED, PS_PAYING)) .
" GROUP BY g.goods_id HAVING num > $sales_count";
$res = $GLOBALS['db']->query($sql);
$rank = count($res) + 1;
if ($rank > 10){
$rank = 0;
}
}else{
$rank = 0;
}
return $rank;
}
/**
* 取得跟商品关联的礼包列表
*
* @param string $goods_id
* 商品编号
*
* @return 礼包列表
*/
function get_package_goods_list($goods_id) {
$now = gmtime();
$sql = "SELECT pg.goods_id, ga.act_id, ga.act_name, ga.act_desc, ga.goods_name, ga.start_time,
ga.end_time, ga.is_finished, ga.ext_info
FROM {pre}goods_activity AS ga, {pre}package_goods AS pg
WHERE pg.package_id = ga.act_id
AND ga.start_time <= '" . $now . "'
AND ga.end_time >= '" . $now . "'
AND pg.goods_id = " . $goods_id . "
GROUP BY ga.act_id
ORDER BY ga.act_id ";
$res = $GLOBALS['db']->getAll($sql);
foreach ($res as $tempkey => $value) {
$subtotal = 0;
$row = unserialize($value ['ext_info']);
unset($value ['ext_info']);
if ($row) {
foreach ($row as $key => $val) {
$res [$tempkey] [$key] = $val;
}
}
$sql = "SELECT pg.package_id, pg.goods_id, pg.goods_number, pg.admin_id, p.goods_attr, g.goods_sn, g.goods_name, g.market_price, g.goods_thumb, IFNULL(mp.user_price, g.shop_price * '$_SESSION[discount]') AS rank_price
FROM {pre}package_goods AS pg
LEFT JOIN {pre}goods AS g
ON g.goods_id = pg.goods_id
LEFT JOIN {pre}products AS p
ON p.product_id = pg.product_id
LEFT JOIN {pre}member_price AS mp
ON mp.goods_id = g.goods_id AND mp.user_rank = '$_SESSION[user_rank]'
WHERE pg.package_id = " . $value ['act_id'] . "
ORDER BY pg.package_id, pg.goods_id";
$goods_res = $GLOBALS['db']->getAll($sql);
foreach ($goods_res as $key => $val) {
$goods_id_array [] = $val ['goods_id'];
$goods_res [$key] ['goods_thumb'] = get_image_path($val ['goods_thumb'], true);
$goods_res [$key] ['market_price'] = price_format($val ['market_price']);
$goods_res [$key] ['rank_price'] = price_format($val ['rank_price']);
$subtotal += $val ['rank_price'] * $val ['goods_number'];
}
/* 取商品属性 */
$sql = "SELECT ga.goods_attr_id, ga.attr_value
FROM {pre}goods_attr AS ga, {pre}attribute AS a
WHERE a.attr_id = ga.attr_id
AND a.attr_type = 1
AND " . db_create_in($goods_id_array, 'goods_id');
$result_goods_attr = $GLOBALS['db']->getAll($sql);
$_goods_attr = array();
foreach ($result_goods_attr as $value) {
$_goods_attr [$value ['goods_attr_id']] = $value ['attr_value'];
}
/* 处理货品 */
$format = '[%s]';
foreach ($goods_res as $key => $val) {
if ($val ['goods_attr'] != '') {
$goods_attr_array = explode('|', $val ['goods_attr']);
$goods_attr = array();
foreach ($goods_attr_array as $_attr) {
$goods_attr [] = $_goods_attr [$_attr];
}
$goods_res [$key] ['goods_attr_str'] = sprintf($format, implode(',', $goods_attr));
}
}
$res [$tempkey] ['goods_list'] = $goods_res;
$res [$tempkey] ['subtotal'] = price_format($subtotal);
$res [$tempkey] ['saving'] = price_format(($subtotal - $res [$tempkey] ['package_price']));
$res [$tempkey] ['package_price'] = price_format($res [$tempkey] ['package_price']);
}
return $res;
}
/**
* 获取商品销量总数
*
* @access public
* @param integer $goods_id
* @return integer
*/
function get_goods_sales($goods_id)
{
/* 查询该商品销量 */
$sql = 'SELECT IFNULL(SUM(g.goods_number), 0) as count ' .
'FROM {pre}order_info AS o, {pre}order_goods AS g ' .
"WHERE o . order_id = g . order_id " .
" AND o . order_status = '" . OS_CONFIRMED . "'" .
" AND o . shipping_status " . db_create_in(array(SS_SHIPPED, SS_RECEIVED)) .
" AND o . pay_status " . db_create_in(array(PS_PAYED, PS_PAYING)) .
" AND g . goods_id = '$goods_id'";
$result = $GLOBALS['db']->getOne($sql);
return $result;
}
/**
* 调用购物车信息
*
* @access public
* @return string
*/
function cart_number()
{
if(!empty($_SESSION['user_id'])){
$sess_id = " user_id = '" . $_SESSION['user_id'] . "' ";
}else{
$sess_id = " session_id = '" . real_cart_mac_ip() . "' ";
}
$sql = 'SELECT SUM(goods_number) AS number ' .
' FROM ' . $GLOBALS['ecs']->table('cart') .
" WHERE " . $sess_id . " AND rec_type = '" . CART_GENERAL_GOODS . "'";
$row = $GLOBALS['db']->GetRow($sql);
if ($row)
{
$number = intval($row['number']);
}
else
{
$number = 0;
}
return $number;
}
/**
* 查询评论内容
*
* @access public
* @params integer $id
* @params integer $page
* @return array
*/
function comment($id, $page = 1)
{
$type = 0;
/* 取得评论列表 */
$count = $GLOBALS['db']->getOne('SELECT COUNT(*) FROM ' . $GLOBALS['ecs']->table('comment') .
" WHERE id_value = '$id' AND comment_type = '$type' AND status = 1 AND parent_id = 0");
$size = !empty($GLOBALS['_CFG']['comments_number']) ? $GLOBALS['_CFG']['comments_number'] : 5;
$page_count = ($count > 0) ? intval(ceil($count / $size)) : 1;
$sql = 'SELECT * FROM ' . $GLOBALS['ecs']->table('comment') .
" WHERE id_value = '$id' AND comment_type = '$type' AND status = 1 AND parent_id = 0" .
' ORDER BY comment_id DESC';
$res = $GLOBALS['db']->selectLimit($sql, $size, ($page - 1) * $size);
$arr = array();
$ids = '';
foreach ($res as $row) {
$ids .= $ids ? ",$row[comment_id]" : $row['comment_id'];
$arr[$row['comment_id']]['id'] = $row['comment_id'];
$arr[$row['comment_id']]['email'] = $row['email'];
$arr[$row['comment_id']]['username'] = $row['user_name'];
$arr[$row['comment_id']]['content'] = str_replace('\r\n', '<br />', htmlspecialchars($row['content']));
$arr[$row['comment_id']]['content'] = nl2br(str_replace('\n', '<br />', $arr[$row['comment_id']]['content']));
$arr[$row['comment_id']]['rank'] = $row['comment_rank'];
$arr[$row['comment_id']]['add_time'] = local_date($GLOBALS['_CFG']['time_format'], $row['add_time']);
}
/* 取得已有回复的评论 */
if ($ids) {
$sql = 'SELECT * FROM ' . $GLOBALS['ecs']->table('comment') .
" WHERE parent_id IN( $ids )";
$res = $GLOBALS['db']->query($sql);
foreach($res as $row){
$arr[$row['parent_id']]['re_content'] = nl2br(str_replace('\n', '<br />', htmlspecialchars($row['content'])));
$arr[$row['parent_id']]['re_add_time'] = local_date($GLOBALS['_CFG']['time_format'], $row['add_time']);
$arr[$row['parent_id']]['re_email'] = $row['email'];
$arr[$row['parent_id']]['re_username'] = $row['user_name'];
}
}
/* 分页样式 */
//$pager['styleid'] = isset($GLOBALS['_CFG']['page_style'])? intval($GLOBALS['_CFG']['page_style']) : 0;
$pager['page'] = $page;
$pager['size'] = $size;
$pager['record_count'] = $count;
$pager['page_count'] = $page_count;
$pager['page_first'] = "javascript:gotoPage(1,$id,$type)";
$pager['page_prev'] = $page > 1 ? "javascript:gotoPage(" . ($page - 1) . ",$id,$type)" : 'javascript:;';
$pager['page_next'] = $page < $page_count ? 'javascript:gotoPage(' . ($page + 1) . ",$id,$type)" : 'javascript:;';
$pager['page_last'] = $page < $page_count ? 'javascript:gotoPage(' . $page_count . ",$id,$type)" : 'javascript:;';
$cmt = array('comments' => $arr, 'pager' => $pager);
return $cmt;
}
/**
* 获得指定商品的关联商品
*
* @access public
* @param integer $goods_id
* @return array
*/
function get_linked_goods($goods_id, $warehouse_id = 0, $area_id = 0)
{
//ecmoban模板堂 --zhuo start
$where = '';
$leftJoin = '';
$shop_price = "wg.warehouse_price, wg.warehouse_promote_price, wag.region_price, wag.region_promote_price, g.model_price, g.model_attr, ";
$leftJoin .= " left join " .$GLOBALS['ecs']->table('warehouse_goods'). " as wg on g.goods_id = wg.goods_id and wg.region_id = '$warehouse_id' ";
$leftJoin .= " left join " .$GLOBALS['ecs']->table('warehouse_area_goods'). " as wag on g.goods_id = wag.goods_id and wag.region_id = '$area_id' ";
if($GLOBALS['_CFG']['open_area_goods'] == 1){
$leftJoin .= " left join " .$GLOBALS['ecs']->table('link_area_goods'). " as lag on g.goods_id = lag.goods_id ";
$where .= " and lag.region_id = '$area_id' ";
}
//ecmoban模板堂 --zhuo end
$sql = 'SELECT g.goods_id, g.goods_name, g.goods_thumb, g.goods_img, IF(g.model_price < 1, g.shop_price, IF(g.model_price < 2, wg.warehouse_price, wag.region_price)) AS org_price, ' .
"IFNULL(mp.user_price, IF(g.model_price < 1, g.shop_price, IF(g.model_price < 2, wg.warehouse_price, wag.region_price)) * '$_SESSION[discount]') AS shop_price, ".
'g.market_price, g.sales_volume, ' .
'IF(g.model_price < 1, g.promote_price, IF(g.model_price < 2, wg.warehouse_promote_price, wag.region_promote_price)) as promote_price, ' .
' g.promote_start_date, g.promote_end_date ' .
'FROM ' . $GLOBALS['ecs']->table('link_goods') . ' lg ' .
'LEFT JOIN ' . $GLOBALS['ecs']->table('goods') . ' AS g ON g.goods_id = lg.link_goods_id ' .
"LEFT JOIN " . $GLOBALS['ecs']->table('member_price') . " AS mp ".
"ON mp.goods_id = g.goods_id AND mp.user_rank = '$_SESSION[user_rank]' ".
$leftJoin.
"WHERE lg.goods_id = '$goods_id' AND g.is_on_sale = 1 AND g.is_alone_sale = 1 AND g.is_delete = 0 " .
$where .
"LIMIT " . $GLOBALS['_CFG']['related_goods_number'];
$res = $GLOBALS['db']->query($sql);
$arr = array();
foreach($res as $row){
$arr[$row['goods_id']]['goods_id'] = $row['goods_id'];
$arr[$row['goods_id']]['goods_name'] = $row['goods_name'];
$arr[$row['goods_id']]['short_name'] = $GLOBALS['_CFG']['goods_name_length'] > 0 ?
sub_str($row['goods_name'], $GLOBALS['_CFG']['goods_name_length']) : $row['goods_name'];
$arr[$row['goods_id']]['goods_thumb'] = get_image_path($row['goods_id'], $row['goods_thumb'], true);
$arr[$row['goods_id']]['goods_img'] = get_image_path($row['goods_img']);
$arr[$row['goods_id']]['market_price'] = price_format($row['market_price']);
$arr[$row['goods_id']]['shop_price'] = price_format($row['shop_price']);
$arr[$row['goods_id']]['url'] = build_uri('goods', array('gid'=>$row['goods_id']), $row['goods_name']);
$arr[$row['goods_id']]['sales_volume'] = $row['sales_volume'];
if ($row['promote_price'] > 0)
{
$promote_price = bargain_price($row['promote_price'], $row['promote_start_date'], $row['promote_end_date']);
}
else
{
$promote_price = 0;
}
$arr[$row['goods_id']]['promote_price'] = ($promote_price > 0) ? price_format($promote_price) : '';
}
return $arr;
}
/**
* 查询商品评论
* @param $id
* @param string $rank
* @param int $start
* @param int $size
* @return bool
*/
function get_good_comment($id, $rank = NULL, $hasgoods = 0, $start = 0, $size = 10){
if(empty($id)){
return false;
}
$where = '';
$rank = (empty($rank) && $rank !== 0) ? '' : intval($rank);
if($rank == 4){
//好评
$where = ' AND comment_rank in (4, 5)';
}
elseif($rank == 2){
//中评
$where = ' AND comment_rank in (2, 3)';
}
elseif($rank === 0){
//差评
$where = ' AND comment_rank in (0, 1)';
}elseif($rank == 1){
//差评
$where = ' AND comment_rank in (0, 1)';
}else if($rank == 5){
$where = ' AND comment_rank in (0, 1, 2, 3, 4,5)';
}
$sql = "SELECT * FROM " .$GLOBALS['ecs']->table('comment'). " WHERE id_value = '".$id."' and comment_type = 0 and status = 1 and parent_id = 0 ".$where." ORDER BY comment_id DESC LIMIT $start, $size";
$comment = $GLOBALS['db']->getAll($sql);
$arr = array();
if($comment){
$ids = '';
foreach ($comment as $key=>$row) {
$ids .= $ids ? ",$row[comment_id]" : $row['comment_id'];
$arr[$row['comment_id']]['id'] = $row['comment_id'];
$arr[$row['comment_id']]['email'] = $row['email'];
$arr[$row['comment_id']]['username'] = $row['user_name'];
$arr[$row['comment_id']]['content'] = str_replace('\r\n', '<br />', htmlspecialchars($row['content']));
$arr[$row['comment_id']]['content'] = nl2br(str_replace('\n', '<br />', $arr[$row['comment_id']]['content']));
$arr[$row['comment_id']]['rank'] = $row['comment_rank'];
$arr[$row['comment_id']]['add_time'] = local_date($GLOBALS['_CFG']['time_format'], $row['add_time']);
if($row['order_id'] && $hasgoods){
$sql = "SELECT o.goods_id, o.goods_name, o.goods_attr, g.goods_img FROM ".$GLOBALS['ecs']->table('order_goods')." o LEFT JOIN ".$GLOBALS['ecs']->table('goods')." g ON o.goods_id = g.goods_id WHERE o.order_id = '".$row['order_id']."' ORDER BY rec_id DESC";
$goods = $GLOBALS['db']->getAll($sql);
if($goods){
foreach($goods as $k=>$v){
$goods[$k]['goods_img'] = get_image_path($v['goods_img']);
$goods[$k]['goods_attr'] = str_replace('\r\n', '<br />', htmlspecialchars($v['goods_attr']));
}
}
$arr[$row['comment_id']]['goods'] = $goods;
}
$sql = "SELECT img_thumb FROM {pre}comment_img WHERE comment_id = ".$row['comment_id'];
$comment_thumb = $GLOBALS['db']->getCol($sql);
if(count($comment_thumb)>0){
foreach ($comment_thumb as $k => $v){
$comment_thumb[$k] = get_image_path($v);
}
$arr[$row['comment_id']]['thumb'] = $comment_thumb;
}else{
$arr[$row['comment_id']]['thumb']= 0;
}
}
/* 取得已有回复的评论 */
if ($ids) {
$sql = 'SELECT * FROM ' . $GLOBALS['ecs']->table('comment') ." WHERE parent_id IN( $ids )";
$res = $GLOBALS['db']->query($sql);
foreach($res as $row){
$arr[$row['parent_id']]['re_content'] = nl2br(str_replace('\n', '<br />', htmlspecialchars($row['content'])));
$arr[$row['parent_id']]['re_add_time'] = local_date($GLOBALS['_CFG']['time_format'], $row['add_time']);
$arr[$row['parent_id']]['re_email'] = $row['email'];
$arr[$row['parent_id']]['re_username'] = $row['user_name'];
}
}
$arr = array_values($arr);
}
return $arr;
}
function get_good_comment_as($id, $rank = NULL, $hasgoods = 0, $start = 0, $size = 10){
if(empty($id)){
return false;
}
$where = '';
$rank = (empty($rank) && $rank !== 0) ? '' : intval($rank);
if($rank == 4){
//好评
$where = ' AND comment_rank in (4, 5)';
}
elseif($rank == 2){
//中评
$where = ' AND comment_rank in (2, 3)';
}
elseif($rank === 0){
//差评
$where = ' AND comment_rank in (0, 1)';
}elseif($rank == 1){
//差评
$where = ' AND comment_rank in (0, 1)';
}else if($rank == 5){
$where = ' AND comment_rank in (0, 1, 2, 3, 4,5)';
}
$sql = "SELECT * FROM " .$GLOBALS['ecs']->table('comment'). " WHERE id_value = '".$id."' and comment_type = 0 and status = 1 and parent_id = 0 ".$where." ORDER BY comment_id DESC LIMIT $start, $size";
$comment = $GLOBALS['db']->getAll($sql);
$sql = "SELECT * FROM " .$GLOBALS['ecs']->table('comment'). " WHERE id_value = '".$id."' and comment_type = 0 and status = 1 and parent_id = 0 ".$where;
$max = $GLOBALS['db']->getAll($sql);
$max = ceil(count($max)/$size);
$arr = array();
if($comment){
$ids = '';
foreach ($comment as $key=>$row) {
$ids .= $ids ? ",$row[comment_id]" : $row['comment_id'];
$arr[$row['comment_id']]['id'] = $row['comment_id'];
$arr[$row['comment_id']]['email'] = $row['email'];
$arr[$row['comment_id']]['username'] = $row['user_name'];
$arr[$row['comment_id']]['content'] = str_replace('\r\n', '<br />', htmlspecialchars($row['content']));
$arr[$row['comment_id']]['content'] = nl2br(str_replace('\n', '<br />', $arr[$row['comment_id']]['content']));
$arr[$row['comment_id']]['rank'] = $row['comment_rank'];
$arr[$row['comment_id']]['add_time'] = local_date($GLOBALS['_CFG']['time_format'], $row['add_time']);
if($row['order_id'] && $hasgoods){
$sql = "SELECT o.goods_id, o.goods_name, o.goods_attr, g.goods_img FROM ".$GLOBALS['ecs']->table('order_goods')." o LEFT JOIN ".$GLOBALS['ecs']->table('goods')." g ON o.goods_id = g.goods_id WHERE o.order_id = '".$row['order_id']."' ORDER BY rec_id DESC";
$goods = $GLOBALS['db']->getAll($sql);
if($goods){
foreach($goods as $k=>$v){
$goods[$k]['goods_img'] = get_image_path($v['goods_img']);
$goods[$k]['goods_attr'] = str_replace('\r\n', '<br />', htmlspecialchars($v['goods_attr']));
}
}
$arr[$row['comment_id']]['goods'] = $goods;
}
$sql = "SELECT img_thumb FROM {pre}comment_img WHERE comment_id = ".$row['comment_id'];
$comment_thumb = $GLOBALS['db']->getCol($sql);
if(count($comment_thumb)>0){
foreach ($comment_thumb as $k => $v){
$comment_thumb[$k] = get_image_path($v);
}
$arr[$row['comment_id']]['thumb'] = $comment_thumb;
}else{
$arr[$row['comment_id']]['thumb']= 0;
}
}
/* 取得已有回复的评论 */
if ($ids) {
$sql = 'SELECT * FROM ' . $GLOBALS['ecs']->table('comment') ." WHERE parent_id IN( $ids )";
$res = $GLOBALS['db']->query($sql);
foreach($res as $row){
$arr[$row['parent_id']]['re_content'] = nl2br(str_replace('\n', '<br />', htmlspecialchars($row['content'])));
$arr[$row['parent_id']]['re_add_time'] = local_date($GLOBALS['_CFG']['time_format'], $row['add_time']);
$arr[$row['parent_id']]['re_email'] = $row['email'];
$arr[$row['parent_id']]['re_username'] = $row['user_name'];
}
}
$arr = array_values($arr);
}
return array('arr'=>$arr,'max'=>$max);
}
/*
* 取得商品评论条数
*/
function commentCol($id){
if(empty($id)){
return false;
}
$sql = "SELECT count(comment_id) as num FROM {pre}comment WHERE id_value =".$id.' and comment_type = 0 and status = 1 and parent_id = 0';
$arr['all_comment'] = $GLOBALS['db']->getOne($sql);
$sql = "SELECT count(comment_id) as num FROM {pre}comment WHERE id_value =".$id.' AND comment_rank in (4, 5) and comment_type = 0 and status = 1 and parent_id = 0 ';
$arr['good_comment'] = $GLOBALS['db']->getOne($sql);
$sql = "SELECT count(comment_id) as num FROM {pre}comment WHERE id_value =".$id.' AND comment_rank in (2, 3) and comment_type = 0 and status = 1 and parent_id = 0 ';
$arr['in_comment'] = $GLOBALS['db']->getOne($sql);
$sql = "SELECT count(comment_id) as num FROM {pre}comment WHERE id_value =".$id.' AND comment_rank in (0, 1) and comment_type = 0 and status = 1 and parent_id = 0 ';
$arr['rotten_comment'] = $GLOBALS['db']->getOne($sql);
$sql = "SELECT count( DISTINCT b.comment_id) as num FROM {pre}comment as a LEFT JOIN {pre}comment_img as b ON a.id_value=b.goods_id WHERE a.id_value =".$id." and a.comment_type = 0 and a.status = 1 and a.parent_id = 0 and b.img_thumb != ''";
$arr['img_comment'] = $GLOBALS['db']->getOne($sql);
foreach ($arr as $key =>$val){
$arr[$key] = empty($val) ? 0 : $arr[$key];
}
return $arr;
}