目前官方随着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']) . "'";
}

更多相关问题访问布谷网



ecshop商品批量上传之EC助理1.28支持ECshop2.7.3方法的更多相关文章

  1. ecshop 后台批量上传商品 完整上传

    ecshop 后台批量上传商品,之所以无法上传,是因为后台上传php文件方法中没有导入商品原图路径 将ecshop根目录中的admin/goods_batch.php文件全部修改为 <?php ...

  2. Ecshop商品描述上传中文名图片无法显示解决方法

    在后台上传商品图片的时候,如果你选择一个中文名称的图片,那么上传后会产生乱码,导致图片显示不出来. 下面说一种解决办法:使用"年月日时分秒 + 6个随机字符"做为文件名,如 201 ...

  3. 基于“formData批量上传的多种实现” 的多图片预览、上传的多种实现

    前言 图片上传是web项目常见的需求,我基于之前的博客的代码(请戳:formData批量上传的多种实现)里的第三种方法实现多图片的预览.上传,并且支持三种方式添加图片到上传列表:选择图片.复制粘贴图片 ...

  4. 首页商品图片显示错位,easy-popular批量上传

    =============关于zencart批量商品管理的说明================== 首先,安装好批量商品管理模块,设置 /tempEP 目录可写二.确认你已经在后台增加了一些分类目录. ...

  5. Python基于Python实现批量上传文件或目录到不同的Linux服务器

    基于Python实现批量上传文件或目录到不同的Linux服务器   by:授客 QQ:1033553122 实现功能 1 测试环境 1 使用方法 1 1. 编辑配置文件conf/rootpath_fo ...

  6. 带进度条的文件批量上传插件uploadify

    有时项目中需要一个文件批量上传功能时,个人认为uploadify是快速简便的解决方案. 先上效果图: 一. 下载uploadify 从官网下载uploadify的Flash版本(Flash版本免费,另 ...

  7. Discuz模拟批量上传附件发帖

    简介 对于很多用discuz做资源下载站来说,一个个上传附件,发帖是很繁琐的过程.如果需要批量上传附件发帖,就需要去模拟discuz 上传附件的流程. 模拟上传 discuz 附件逻辑 dz附件储存在 ...

  8. Mvc利用淘宝Kissy uploader实现图片批量上传附带瀑布流的照片墙

    前言 KISSY 是由阿里集团前端工程师们发起创建的一个开源 JS 框架.它具备模块化.高扩展性.组件齐全,接口一致.自主开发.适合多种应用场景等特性.本人在一次项目中层使用这个uploader组件. ...

  9. 利用uploadify+asp.net 实现大文件批量上传。

    前言 现在网上文件上传组件随便一搜都是一大堆,不过看大家一般都在用uploadify这个来上传文件.由于项目需要,我在来试了一下.因为第一次使用,也遇到了很多问题,特此记录! ------------ ...

随机推荐

  1. Shell-09-文本处理awk

    awk 详情见: awk

  2. VLAN-3 Hybrid接口应用

    一.实验拓扑图 二.实验编址 三.实验步骤 1.给对应的PC设置对应的IP和掩码还有接口,以及根据需要划分不同的vlan区域,再用文本标记出不同部门. 2.启动设备(全选) 3.首先用ping命令检查 ...

  3. 简单实现Linux服务器重启后自动启动Tomcat以及MongoDB

    1.场景描述 做一个网站差不多都会用到tomcat,用阿里云镜像市场提供的镜像里的tomcat是方便的,但是自己喜欢折腾,所以就自己在服务器里装了一个tomcat 但是有一次服务器被关了,然后自己要到 ...

  4. Spring-boot注入配置为java静态属性

    配置文件 注入静态变量 注意 类上面有:@Component注解 使用注入的静态变量 成功

  5. SQL server多表联合查询

    参考网址: https://blog.csdn.net/zou15093087438/article/details/79226394 1. 外连接可分为:左连接.右连接.完全外连接. a.  左连接 ...

  6. C++智能指针的原理和实现

    一.智能指针起因 在C++中,动态内存的管理是由程序员自己申请和释放的,用一对运算符完成:new和delete. new:在动态内存中为对象分配一块空间并返回一个指向该对象的指针: delete:指向 ...

  7. 本文详细阐述如何用C#创建COM组件,并能用VC6.0等调用。

    本文详细阐述如何用C#创建COM组件,并能用VC6.0等调用. 附:本文适用任何VS系列工具. 在用C#创建COM组件时,一定要记住以下几点: 1.所要导出的类必须为公有: 2.所有属性.方法也必须为 ...

  8. 【java虚拟机】内存溢出解决思路

    转自:https://blog.csdn.net/u013521220/article/details/79523633 内存溢出与数据库锁表的问题,可以说是开发人员的噩梦,一般的程序异常,总是可以知 ...

  9. 【linux】vim常用命令

    转自:https://www.runoob.com/linux/linux-vim.html vi/vim 的使用 基本上 vi/vim 共分为三种模式,分别是命令模式(Command mode),输 ...

  10. 编译ffmpeg(第一次),实现JPG转MP4

    ffpmeg网址:http://ffmpeg.org/ ffmpegapi文档:http://ffmpeg.org/doxygen/trunk/index.html 因为这是JPG转MP4,所以不涉及 ...