分类归档

网站开发

FWQ
网站开发
ECshop前台和后台提示信息调用
前台提示 1. 显示一个提示信息,调用以下函数: show_message($content, $links = ”, $hrefs = ”, $type = ‘info’, $auto_redirect = true) $content:提示内容 $links:跳转链接名称 $hrefs:跳转链接地址 $type:提示信息类型warning, error, info $auto_redirect:是否自动跳转,默认为是 2. 显示错误信息,调用: show($link = ”,…
2025-04-23 阅读全文 →
FWQ
网站开发
ecshop订单提交页面详细地址显示省市区
默认的ecshop订单提交页面,收货人信息中只记录了用户的详细地址,没有显示省份、城市和区域。 下面我们就来调取已经填写的省份、城市和区域。   1、找到includes/lib_main.php,添加一个函数     function get_region_name($rid){     return $GLOBALS[‘db’]->GetOne(“SELECT region_name FROM “.$GLOBALS[‘ecs’]->table(‘region’).” WHERE region_id=’$rid'”); } 2.找到flow.php,定位到     elseif ($_REQUEST[‘step’] == ‘checkout’) 在此区块下找到    …
2025-04-23 阅读全文 →
FWQ
网站开发
ecshop退出网页后不能保留上一次已添加到购物车中的商品
经常有不同用户留言,ecshop偶很猥琐悄然无声的将浏览器窗口关闭了,俺多年积累到到购物车的商品瞬间灰飞烟灭,此刻你叫我怎么淡定,比火球还火的怒火就在这一刻爆发了,亲爱的管理员,客户悄然流失,订单一天比一天少,你还如此淡定吗?想挽回这一切损失吗?赶紧跟着我来一步一步往下做吧,客户不断,掌声响起,闲来蛋疼,先闭嘴,废话少说,进入主题,开始修改了喽 找到includes/cls_session.php大约在268行查找下面代码: 复制内容到剪贴板 折叠 PHP 代码 if (!emptyempty($GLOBALS[‘ecs’]))   {       $this->db->query(‘DELETE FROM ‘ . $GLOBALS[‘ecs’]->table(‘cart’) . ” WHERE session_id = ‘$this->session_id'”);   }   替换为: 复制内容到剪贴板 折叠 XML/HTML 代码 if (!empty($GLOBALS[‘ecs’]))   {       $this->db->query(‘DELETE FROM ‘ . $GLOBALS[‘ecs’]->table(‘cart’) . ” WHERE session_id = ‘$this->session_id’ and user_id =”“);   }   接下来,在同目录下找到lib_main.php定位到页面的最后,新增加一段代码以完成购物车不再被清空的烦恼。 复制内容到剪贴板 折叠 PHP 代码 /* 更新用户购物车退出不清空购物车*/    $sql = “update “.$GLOBALS[‘ecs’]->table(‘cart’).” set user_id =”.$_SESSION[‘user_id’].” where session_id = ‘”.SESS_ID.“‘”;    $GLOBALS[‘db’] -> query($sql);   l1 = “update “.$GLOBALS[‘ecs’]->table(‘cart’).” set session_id ='”.SESS_ID.“‘ where user_id = ‘”.$_SESSION[‘user_id‘].”‘“;  …
2025-04-23 阅读全文 →
FWQ
网站开发
ecshop中红包编码生成规则分析和改进
 我们知道在ecshop后台的促销管理里面,有红包的功能。ecshop红包的功能无非就是可以直接抵消现金的作用,ecshop红包有两类型,一种是直接发送到个人帐户上去的。就是存储在ecs_user_bonus表中的,这个一旦发送到客户的帐户上去。那么意味着别人拿到了这个编码,也不能使用这个编码进行抵扣。另外一种ecshop红包就是线下发送的。当你得到这个编码,在红包的有效期内,可以使用该红包。      我们必须知道,ecshop的红包编码是有问题的。我们看flow.php      if (((!empty($bonus) && $bonus[‘user_id’] == $_SESSION[‘user_id’]) || ($bonus[‘type_money’] > 0 && empty($bonus[‘user_id’]))) && $bonus[‘order_id’] <= 0)        这一句表示,就算是该编码没被使用。只要是发到个人帐户去之后。即使你登陆了,也不能通过这个编码来进行使用,所以这就是一大问题。       其次,我们看ecshop红包的编码生成机制。       $num = $db->getOne(“SELECT MAX(bonus_sn)…
2025-04-23 阅读全文 →
FWQ
网站开发
ecshop后台通过ajax搜索原理
ecshop的搜索其实是功能十分强大的,但是ecshop搜索功能前台和后台还不大一样,前台主要是通过get方式,提交的url进行分页,而在ecshop的后台,则是接受表单的搜索条件,然后通过js发布到ajax.最后又通过ecshop的ajax将结果返回.然后在显示最后的搜索结果.    我们来举个例子,具体分析下ecshop后台通过ajax方式来进行搜索.    比如我们通过ecshop后台的ajax方式来搜索退换货订单    1:必须在htm中增增加以下搜索框,订单号 <input type=”text” name=”order_sn” size=”15″ />    2:html中的ajax可以写成以下格式        listTable.filter[‘order_sn’] = Utils.trim(document.forms[‘searchForm’].elements[‘order_sn’].value);        listTable.filter[‘page’] = 1;         listTable.loadList();      我们可以看到以下,就是通过listTable.loadList();来触发ajax的。    3:我们再看php调用。   $result…
2025-04-23 阅读全文 →
FWQ
网站开发
让ecshop用户名和email都可以登陆!
让ecshop用户名和email都可以登陆! 在最近的几次开发案例中, 客户经常提到使自己的网站能够用email登陆. 确实,自2005年,web2.0兴起以来,越来越多的网站,尤其是新兴网站,大多是用email登陆的. 用email登陆,好处很明显. 1:可以促使用户填写真实的email. 2:不易忘记. 下面的改动,可以使ecshop用email,用户名都可以完成登陆. —————————分割线—————————– 改动版本: ecshop 2.7.0 改动程序: /includes/modules/integrates/integrate.php 改动代码:145—162行的用户登陆函数.如下       function login($username, $password)     {         if ($this->check_user($username, $password) > 0)…
2025-04-23 阅读全文 →
FWQ
网站开发
ecshop批量删除购物车商品
在ecshop实现ecshop批量删除购物车商品,1.添加checkbox复选框:在商品图片前面加一个 <input type="checkbox" name="subBox" id="subBox" value="{$goods.rec_id}" /> 2.加上一段获取复选框id的代码 function group_drop_goods(){ var id =""; $("[name='subBox']").each(function(){ if($(this).attr("checked")) { if(id){ id+=","+$(this).val(); }else{ id+=""+$(this).val(); } } }) if(id){ if(confirm('{$lang.drop_goods_confirm}')){ location.href='flow.php?step=group_drop_goods&id='+id; } }else{…
2025-04-23 阅读全文 →
FWQ
网站开发
修改Ecshop首页在线会员数量的方法
 查找:includes/lib_insert.php里面的   $online_count = $GLOBALS[‘db’]->getOne(“SELECT COUNT(*) FROM ” . $GLOBALS[‘ecs’]->table(‘sessions’));  将这一段改成: $online_count = $GLOBALS[‘db’]->getOne(“SELECT COUNT(*) FROM ” . $GLOBALS[‘ecs’]->table(‘sessions’))*15; ecshop首页在线会员的数量乘了15
2025-04-23 阅读全文 →
FWQ
网站开发
如何批量清除ECShop管理员日志
大家在使用ecshop的时候,肯定会遇到这样的情况。由于经常编辑文章,上架商品,还有添加商品评论,结果导致在ECSHOP管理中心的管理员日志,已经有上千条信息了。   如果不把这些信息删除,那么在备份数据库的时候,备份文件会大一点,但是一次性删除几十条,也要删除好久一阵。   那么怎么办呢?现在,好模板告诉大家如何批量清除ECShop管理员日志。   经验老道的朋友可能已经想到了使用mysql数据库命令,自己清空掉。   完全猜对了,那么好模板还是把这个清空代码写出来,毕竟还是有很多站长朋友不会操作数据库。   首先,找到ECSHOP管理中心的SQL查询,这个界面会有一个运行SQL查询的命令框。下面还有一段很显著的文字,【执行SQL将直接操作数据库,请谨慎使用】。   接着,我们在命令框里面,写入这样一段代码,如下所示 TRUNCATE `ecs_admin_log` ;   好了,这样我们就把管理员日志给清除了,现在去看看,是不是已经没有管理员日志了,它已经被我们一次性全部删除了。   最后,我们找到【数据表优化】,点击【开始进行数据表优化】,将程序产生的碎片全部清理干净。   这样,我们的工作就完成了。
2025-04-23 阅读全文 →
FWQ
网站开发
改造ecshop读写分离配置与改造
前两天配置好了mysql主从方式,今天就拿ecshop练习读写分离。以下代码仅供学习参考,不成熟的地方,还需完善。 <?php $db_name = "ecshop"; $prefix = "ecs_"; $timezone = "Europe/Berlin"; $cookie_path = "/"; $cookie_domain = ""; $session = "1440"; $_config = array(); //数据库主服务器设置, 支持多组服务器设置, 当设置多组服务器时, 则会随机使用某个服务器 $_config['master'][1]['dbhost']…
2025-04-23 阅读全文 →