网站开发 · 2025年4月24日

让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}–>