• 让ecshop用户登录评价以可择匿名评价


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

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

    让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}-->
  • 相关阅读:
    *Basic Calculator
    今天周末20190616,分享句喜欢的话,常用架构图
    Python 面向对象 --- 类和对象
    Python 面向对象(OOP)基本概念
    Python 高级变量类型 --- 函数的进阶
    Python 高级变量类型 --- 变量进级
    Python 高级变量类型 --- 综合应用
    Python 高级变量类型 --- 公共方法
    Python 高级变量类型 --- 字典
    Python 高级变量类型 --- 元组
  • 原文地址:https://www.cnblogs.com/GmrBrian/p/4170735.html
Copyright © 2020-2023  润新知