目前官方随着ECShop V2.73的发布也发布了相对应的EC助理1.30版。默认EC助理1.28也支持到ECShop V2.72,要想让EC助理1.28也支持到ECShop V2.73,那要了解ECShop V2.73在ECShop V2.72上都做了哪些改变。我就讲了。EC助理1.28下载,下载后请根据里面的文档和教程安装。
安装完成后我们按照教程连接我们ECShop V2.73网站时会直接抛出一个用户名或者密码错误的提示,这时打开上传到服务器上的接口目录assistant_utf8下的ecaService.php文件,在51行会看到下面的代码:

function checkLogin($username,$password)
{
$username= base64_decode($username);
$password= base64_decode($password); //$username = str_iconv(ECS_CHARSET, EC_CHARSET, $username);
//$password = str_iconv(ECS_CHARSET, EC_CHARSET, $password); //return true; $sql= "SELECT user_id, user_name, password, last_login, action_list, last_login".
" FROM ". $GLOBALS['ecs']->table('admin_user') .
" WHERE user_name = '". $username."' AND password = '" . md5($password) ."'"; $row= $GLOBALS['db']->getRow($sql);
if($row)
{
returntrue;
}else{
returnfalse;
}
}
修改这段代码之前,需要你到你网站数据库查看ecs_admin_user表中ec_salt这个字段的值,下面是我这个表的截图:



<pre name="code" class="php">function checkLogin($username, $password)
{
$username = base64_decode($username);
$password = base64_decode($password); //$username = str_iconv(ECS_CHARSET, EC_CHARSET, $username);
//$password = str_iconv(ECS_CHARSET, EC_CHARSET, $password); //return true; $sql = "SELECT user_id, user_name, password, last_login, action_list, last_login".
" FROM " . $GLOBALS['ecs']->table('admin_user') .
" WHERE user_name = '" . $username. "' AND password = '" . md5(md5($password).'5606') . "'"; $row = $GLOBALS['db']->getRow($sql);
if ($row)
{
return true;
}else{
return false;
}
}</pre><br><br>

注意这段代码的5606要替换成你数据库中对应的值,操作之后EC助理1.28就能完美支持ECShop V2.73了,简单吧。来说下原理,

ECShop V2.73得管理登录加密方式在之前的版本上做了改变,我们来看ECShop V2.73的管理员登录加密部分代码:

if(!empty($ec_salt))
{
/* 检查密码是否正确 */
$sql= "SELECT user_id, user_name, password, last_login, action_list, last_login,suppliers_id,ec_salt".
" FROM ". $ecs->table('admin_user') .
" WHERE user_name = '". $_POST['username']. "'AND password = '" . md5(md5($_POST['password']).$ec_salt) . "'";
}
else
{
/* 检查密码是否正确 */
$sql= "SELECT user_id, user_name, password, last_login, action_list, last_login,suppliers_id,ec_salt".
" FROM ". $ecs->table('admin_user') .
" WHERE user_name = '". $_POST['username']. "'AND password = '" . md5($_POST['password']) . "'";
}

更多相关问题访问布谷网



最新文章

  1. Array数组标准库
  2. github仓库的克隆、修改、上传方法(图)
  3. mac下载百度云盘大文件及断点续传的方法
  4. Prefix.pch的作用和用法
  5. 【HDOJ】1341 Simple Computers
  6. Spark问题记录
  7. hibernate 单元測试框架
  8. 微信小程序自动化测试--接口测试
  9. 设计模式(5)原型模式(Prototype)
  10. tensorflow serving
  11. [Database]各数据库连接配置:Oracle:thin 数据库连接/MySQL 连接配置
  12. 2.5、CDH 搭建Hadoop在安装(设置Cloudera Manager数据库)
  13. 亿万第一至二季/全集Billions迅雷下载
  14. 【Linux 驱动】Netfilter/iptables (八) Netfilter的NAT机制
  15. POJ-3259 Wormholes(判断负环、模板)
  16. Zabbix二次开发_02获取数据
  17. python + docker, 实现天气数据 从FTP获取以及持久化(三)-- python获取FTP数据
  18. javascript中函数的写法
  19. SpringMVC 国际化问题
  20. redis——redis主从复制

热门文章

  1. redis如何实现分布式锁?
  2. java简体(繁体)转换器
  3. 什么是.NET CLI CLR IL JIT GC,它们是如何工作的
  4. 【java文件处理】java项目路径下的文件下载处理
  5. QT 中的模态和非模态对话框
  6. (1)hadoop之----linux配置jdk环境
  7. jQuery中的事件(八):on()、off()、bind()、unbind()、one()、hover()、hide()、show()、offset()等
  8. jQuery中的文档操作处理(五):append()、prepend()、after()、before()、wrap()、wrapAll()、wrapInner()、clone()等
  9. jsp中核心标签使用
  10. SpringBoot 优雅配置跨域多种方式及Spring Security跨域访问配置的坑