×
  官方微博: 腾讯   新浪
ECSHOP模板 
食品保健 家居化妆 家电数码 综合通用 珠宝配饰
VIP免费模板 
家居化妆 综合通用 服装饰品 食品保健 家电数码
ECSHOP插件 
ECSHOP插件 SHOPEX插件
EC教程中心
安装使用网店运营
首页 > ECSHOP教程 > 快速解决ecshop虚拟卡出现星号问题

帮助目录

有问必答

您可以加入我们的官方QQ群。

加入官方QQ群

可以将问题或建议反馈给我们。

提交在线客服

猜您感兴趣

快速解决ecshop虚拟卡出现星号问题

网站开发中心/ 2014-08-22/ 关注人气:627

在所有的ecshop的版本当中,网站搬家或者使用LINUX主机,虚拟物品卡号密码全部变成***很突然。没有进行任何后台改动。添加新产品的卡密也是如此 分析ecshop,我们发现 发现是/admin/virt 在所有的ecshop的版本当中,网站搬家或者使用LINUX主机,虚拟物品卡号密码全部变成***很突然。没有进行任何后台改动。添加新产品的卡密也是如此   分析ecshop,我们发现是/admin/virtual_card.php里 有关于星号 看程序后 发现是由include/lib_code.php关于加密解密函数控制的。

virtual_card.php 控制的代码如下   foreach ($all AS $key => $row)     {         if ($row['crc32'] == 0 || $row['crc32'] == crc32(AUTH_KEY))         {             $row['card_sn']       = decrypt($row['card_sn']);             $row['card_password'] = decrypt($row['card_password']);         }         elseif ($row['crc32'] == crc32(OLD_AUTH_KEY))         {             $row['card_sn']       = decrypt($row['card_sn'], OLD_AUTH_KEY);             $row['card_password'] = decrypt($row['card_password'], OLD_AUTH_KEY);         }         else         {             $row['card_sn']       = '***';             $row['card_password'] = '***';         } 

复制代码 深入分析后发现 $row['crc32'] == 0 || $row['crc32'] == crc32(AUTH_KEY)) 

复制代码 以及 ($row['crc32'] == crc32(OLD_AUTH_KEY)) 

复制代码 主要是判断数据库中得crc32字段和经过crc32加密的字符串是否一致 但是发现 数据库中的crc32字符串和crc32加密的字符串 完全不一样所以导致了 出现卡号和卡密为星号的问题 比如我们加密字符串设置的是456  数据库中的crc32 显示为 2147483647  而我们直接代码crc32出来的值为 2980627313 所以导致了 卡号显示为三个***  其实该问题以linux 时间戳问题引起,解决办法很简单 UPDATE virtual_card SET crc32 = ‘0’

分享到:
下一篇:ecshop2.73系统整合Discuz! X3论坛详细图文教程
上一篇:将Ecshop后台商品分类页改造成点击展开子分类