首页建站经验 ecshop商品评论和咨询分开

ecshop商品评论和咨询分开

 笔者在测试过程中发现了一些细节的错误,笔者在这里纠正一下:1:goods.dwt增加以下代码2:comments1.lbi内容为以下{insert_scripts files='transport.js,utils.js'} {* ECSHOP…

 

笔者在测试过程中发现了一些细节的错误,笔者在这里纠正一下:

1:goods.dwt增加以下代码

2:comments1.lbi内容为以下

{insert_scripts files='transport.js,utils.js'}

{* ECSHOP 提醒您:动态载入comments_list.lbi,显示评论列表和评论表单 *}{insert name='comments1' type=2 id=$id}

3:comment_list1.lbi内容为以下

用户咨询

({$lang.total}

{$pager.record_count}

用户咨询)

  • {$comment.username|escape:html}{$lang.anonymous} ( {$comment.add_time} )

    {$comment.comment_rank}

    {$comment.content}

    {$lang.admin_username}{$comment.re_content}

  • 目前没有任何用户咨询

{$lang.pager_1}{$pager.record_count}{$lang.pager_2}{$lang.pager_3}{$pager.page_count}{$lang.pager_4} {$lang.page_first} {$lang.page_prev} {$lang.page_next} {$lang.page_last}

{$lang.total} {$pager.record_count} {$lang.user_comment_num}

1 ...

{$lang.page_prev}

{$key}

[{$key}]

{$lang.page_next}

...{$pager.page_count}

<script type="Text/Javascript" language="JavaScript">

</script>

E-mail:

{$lang.comment_content}:

{$lang.comment_captcha}:

captcha

<script type="text/javascript">

//

{foreach from=$lang.cmt_lang item=item key=key}

var {$key} = "http://www.cuoxin.com/wen/2019/11-02/{$item}";

{/foreach}

{literal}

/**

* 提交评论信息

*/

function submitComment1(frm)

{

var cmt = new Object;

cmt.email = frm.elements['email'].value;

cmt.content = frm.elements['content'].value;

cmt.type = frm.elements['cmt_type'].value;

cmt.id = frm.elements['id'].value;

cmt.enabled_captcha = frm.elements['enabled_captcha'] ? frm.elements['enabled_captcha'].value : '0';

cmt.captcha = frm.elements['captcha'] ? frm.elements['captcha'].value : '';

cmt.rank = 5;

if (cmt.email.length > 0)

{

if (!(Utils.isEmail(cmt.email)))

{

alert(cmt_error_email);

return false;

}

}

else

{

alert(cmt_empty_email);

return false;

}

if (cmt.content.length == 0)

{

alert(cmt_empty_content);

return false;

}

if (cmt.enabled_captcha > 0 && cmt.captcha.length == 0 )

{

alert(captcha_not_null);

return false;

}

Ajax.call('comment1.php', 'cmt=' + cmt.toJS**tring(), commentResp**e1, 'POST', 'JSON'); 这里也有问题 注意** 根据具体函数进行修正

return false;

}

/**

* 处理提交评论的反馈信息

*/

function commentResp**e1(result) 此处有问题,这个函数的全名是:gotoPageResponse1

{

if (result.message)

{

alert(result.message);

}

if (result.error == 0)

{

var layer = document.getElementById('ECS_COMMENT1');

if (layer)

{

layer.innerHTML = result.content;

}

}

}

{/literal}

//]]>

</script>

注意他的cmp_type=2

4:复制一份comment.php命名为commen1.php,但是记得处理cmt_type=2

5:includes/lib_insert.php增加以下函数

function insert_comments1($arr)

{

$need_cache = $GLOBALS['smarty']->caching;

$need_compile = $GLOBALS['smarty']->force_compile;

$GLOBALS['smarty']->caching = false;

$GLOBALS['smarty']->force_compile = true;

/* 验证码相关设置 */

if ((intval($GLOBALS['_CFG']['captcha']) & CAPTCHA_COMMENT) && gd_version() > 0)

{

$GLOBALS['smarty']->assign('enabled_captcha', 1);

$GLOBALS['smarty']->assign('rand', mt_rand());

}

$GLOBALS['smarty']->assign('username', stripslashes($_SESSION['user_name']));

$GLOBALS['smarty']->assign('email', $_SESSION['email']);

$GLOBALS['smarty']->assign('comment_type', 2);

$GLOBALS['smarty']->assign('id', $arr['id']);

$cmt = assign_comment1($arr['id'], $arr['type']);

$GLOBALS['smarty']->assign('comments', $cmt['comments']);

$GLOBALS['smarty']->assign('pager', $cmt['pager']);

$val = $GLOBALS['smarty']->fetch('library/comments_list1.lbi');

$GLOBALS['smarty']->caching = $need_cache;

$GLOBALS['smarty']->force_compile = $need_compile;

return $val;

}

6:js/common.js增加咨询分页js

function gotoPage1(page, id, type)

{

Ajax.call('comment1.php?act=gotopage', 'page=' + page + '&id=' + id + '&type=2', gotoPageResp**e1, 'GET', 'JSON'); 这里也有问题gotoPageResponse1

}

function gotoPageResp**e1(result) 这里也是这个问题:gotoPageResponse1

{

document.getElementById("ECS_COMMENT1").innerHTML = result.content;

}

7:处理购买咨询函数

function assign_comment1($id, $type, $page = 1)

{

/* 取得评论列表 */

$count = $GLOBALS['db']->getOne('SELECT COUNT(*) FROM ' .$GLOBALS['ecs']->table('comment').

" WHERE id_value = '$id' AND comment_type = '2' 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 = '2' AND status = 1 AND parent_id = 0".

' ORDER BY comment_id DESC';

$res = $GLOBALS['db']->selectLimit($sql, $size, ($page-1) * $size);

$arr = array();

$ids = '';

while ($row = $GLOBALS['db']->fetchRow($res))

{

$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', '
', htmlspecialchars($row['content']));

$arr[$row['comment_id']]['content'] = nl2br(str_replace('/n', '
', $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);

while ($row = $GLOBALS['db']->fetch_array($res))

{

$arr[$row['parent_id']]['re_content'] = nl2br(str_replace('/n', '
', 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;

}

8:后台根据cmt_type进行处理就OK了。

本文来自网络,不代表1号站长-站长学院|资讯交流平台立场。转载请注明出处: https://www.1cn.cc/jianzhan/jingyan/16202.html
上一篇ecshop无法发起QQ临时会话
下一篇 如何去掉Powered by phpwind v9.0.1标题?
admin

作者: admin

这里可以再内容模板定义一些文字和说明,也可以调用对应作者的简介!或者做一些网站的描述之类的文字或者HTML!

为您推荐

评论列表()

    联系我们

    联系我们

    0898-88888888

    在线咨询: QQ交谈

    邮箱: email@wangzhan.com

    工作时间:周一至周五,9:00-17:30,节假日休息

    关注微信
    微信扫一扫关注我们

    微信扫一扫关注我们

    关注微博
    返回顶部