ECSHOP 默认的程序 是 当用户登录后,对商品商品评价是不是能匿名评价的。

有些店铺设置了只能登录评价,但客户又不想显示自己的账号名称。这时候 这功能 就可以派上用场了

1在 comment.php 的底部 把 add_comment 方法替换成以下代码

/**
 * 添加评论内容
 *
 * @access  public
 * @param   object  $cmt
 * @return  void
 */
function add_comment($cmt)
{
    /* 评论是否需要审核 */
    $status = 1 - $GLOBALS['_CFG']['comment_check'];
 
    $user_id = empty($_SESSION['user_id']) ? 0 : $_SESSION['user_id'];
    $email = empty($cmt->email) ? $_SESSION['email'] : trim($cmt->email);
    $user_name = empty($cmt->username) ? $_SESSION['user_name'] : trim($cmt->username);
    $email = htmlspecialchars($email);
    $user_name = htmlspecialchars($user_name);
 
 
      
    //file_put_contents('test.txt',$cmt->nimingis);
    $nimingis=$cmt->nimingis;
    if($nimingis){
    $user_id=0;
    $user_name= str_mid_replace($_SESSION['user_name']);
        }
    
    
    /* 保存评论内容 */
    $sql = "INSERT INTO " .$GLOBALS['ecs']->table('comment') .
           "(comment_type, id_value, email, user_name, content, comment_rank, add_time, ip_address, status, parent_id, user_id) VALUES " .
           "('" .$cmt->type. "', '" .$cmt->id. "', '$email', '$user_name', '" .$cmt->content."', '".$cmt->rank."', ".gmtime().", '".real_ip()."', '$status', '0', '$user_id')";
 
    $result = $GLOBALS['db']->query($sql);
    clear_cache_files('comments_list.lbi');
    /*if ($status > 0)
    {
        add_feed($GLOBALS['db']->insert_id(), COMMENT_GOODS);
    }*/
    return $result;
}
 
 //字符串截取    
function str_mid_replace($string) {
    if (! $string || !isset($string[1])) return $string;
 
    $len = strlen($string);
    $starNum = floor($len / 2);
    $noStarNum = $len - $starNum;
    $leftNum = ceil($noStarNum / 2);
    $rightNum = $noStarNum - $leftNum;
 
    $result = substr($string, 0, $leftNum);
    $result .= str_repeat('*', $starNum);
    $result .= substr($string, $len-$rightNum);
 
    return $result;
}
 

 2。在comments.lbi 中的 submitComment 方法中增加

 
1
cmt.nimingis = frm.elements['nimingis'].checked;

3.在html代码中增加

     
     <!--{if $smarty.session.user_name}-->
     <tr>
       <td width="64" align="right">是否匿名:</td>
       <td width="631">{$lang.anonymous}<input type="checkbox" name="nimingis" value=""  ></td>
     </tr>
     
    <!--{/if}-->

让ecshop用户登录评价以可择匿名评价的更多相关文章

  1. phpwind ecshop 用户整合

    phpwind ecshop 用户整合,其实很简单.但在网上搜到的尽是乱七八遭的方法,搞得很复杂. 原来公司做的phpwind 与 ecshop 结合的项目,别的同事已经把用户整合好了,当时我还不知道 ...

  2. ecshop用户中心菜单选项显示内容标签

    ecshop用户中心菜单选项有了,那肯定需要给相应的菜单选项添加内容,下面我们主要来讲下调用内容的标签,你也可以先访问一下用户中心菜单选项修改. 用户中心页面的内容分布在两个模板文件中:user_cl ...

  3. 用户登录注册(安全)(常规、FB、google、paypal) 实战

    /* 用户登录界面 */elseif ($action == 'login'){    if($_SESSION['user_id'])    {        ecs_header("Lo ...

  4. PHP验证用户登录例子-学习笔记

    1.基本流程: 2.UML类图: 3.PHP代码: 3.1 index.php <?php /** * Created by PhpStorm. * User: andy * Date: 16- ...

  5. Ubuntu设置root用户登录图形界面

    Ubuntu默认的是root用户不能登录图形界面的,只能以其他用户登录图形界面.这样就很麻烦,因为权限的问题,不能随意复制删除文件,用gedit编辑文件时经常不能保存,只能用vim去编辑. 解决的办法 ...

  6. ASP.NET MVC5+EF6+EasyUI 后台管理系统(19)-权限管理系统-用户登录

    系列目录 我们之前做了验证码,登录界面,却没有登录实际的代码,我们这次先把用户登录先完成了,要不权限是讲不下去了 把我们之前的表更新到EF中去 登录在Account控制器,所以我们要添加Account ...

  7. Asp.Net Core 项目实战之权限管理系统(5) 用户登录

    0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...

  8. android安卓Sqlite数据库实现用户登录注册

    看了很多别人写的安卓SQlite数据的操作代码,一点也不通俗易懂,我觉得我写的不错,而且安卓项目也用上了,所以在博客园里保存分享一下!建立一个类 并继承SQLiteOpenHelper public ...

  9. MySQL 用户登录密码和远程登录权限问题

    1.mysql数据库,忘记root用户登录密码. 解决如下: a.重置密码 #/etc/init.d/mysqld stop #mysqld_safe --user=mysql --skip-gran ...

随机推荐

  1. RFS_关键字

    1.  关键字的参数中能带变量 [示例]: [运行结果]: 2. 关键字的参数中不能带关键字 [示例]: [运行结果]: 其他: (1) 关键字可以理解为高级语言中的“函数”

  2. python计算非内置数据类型占用内存

    getsizeof的局限 python非内置数据类型的对象无法用sys.getsizeof()获得真实的大小,例: import networkx as nx import sys G = nx.Gr ...

  3. @propetry参数

    // //  Person.h //  01-手动内存管理基本概念 // //  Created by apple on 14-3-17. // // #import <Foundation/F ...

  4. 面向对象编程思想(OOP)

    本文我将从面向对象编程思想是如何解决软件开发中各种疑难问题的角度,来讲述我们面向对象编程思想的理解,梳理面向对象四大基本特性.七大设计原则和23种设计模式之间的关系. 软件开发中疑难问题: 软件复杂庞 ...

  5. linux 硬件信息

    1. 查看物理CPU的个数 #cat /proc/cpuinfo |grep "physical id"|sort |uniq|wc -l 2. 查看逻辑CPU的个数 #cat / ...

  6. ajax提交含有html数据时的处理方法

    这两天在做一个文章内修改的功能,由于前端选用的Extjs控件库,于是就使用Ext.form.HtmlEditor. 在使用ajax提交数据的时候,需要提交包含有html代码的数据.这时候问题就来了,不 ...

  7. jeasyui datagrid 使用记

    1. 一开始想用$('#dg').datagrid('getChanges')来保存整个table修改的行, 结果发现当前编辑的行不算,要失去焦点才有记录 2. 然后改用       $('#dg') ...

  8. Redis认识

    摘要:认识Redis 1.安装Redis npm install redis 2.Redis使用 var redis = require("redis"), client = re ...

  9. 源码搭建LNMP

      源码安装LNMP 作者:尹正杰   版权声明:原创作品,谢绝转载!否则将追究法律责任.       欢迎加入:高级运维工程师之路 598432640 前言:非常简单的一个平台LNMP,在生产实际环 ...

  10. SQL 简单查询语句 select

    select *from emp;//查询emp表内容