专注ECSHOP第九年
始自2007,服务二千多商户,不断为您增光溢彩

click事件在苹果手机失效的问题

阿牛阅读(2523)

因为是动态添加的内容,所以想要使用click事件,需要给他用on绑定一下:

$(document).on(“click”,”.next_button”,function(){
alert(“UUECS.COM模板中心”);});

 

这个时候,使用苹果手机访问的时候,发现了一个坑爹的问题,如论如何点击“下一步”,都没有任何反应,可是在安卓和各种模拟器中一切正常。后来经过查找资料才知道,苹果有这么个设置:
对于点击的对象,拥有cursor:pointer这个样式的设置,也就是说,鼠标放上去,能够出现“手”型的图标才被认作可以使用点击事件,于是增加了样式
.next_button{ cursor:pointer },搞定。

 

修改ecs_header为301重定向 避免搜索引擎封杀

阿牛阅读(2393)

目的:

将原有的302重定向改为301永久重定向,避免被搜索引擎封杀category/goods页

打开 includes/lib_base.php

查找

if (preg_match(‘/^\s*location:/is’, $string))
{
@header($string . “\n”, $replace);

exit();
}

改为

if (preg_match('/^\s*location:/is', $string))
    {
    	@header('HTTP/1.1 301 Moved Permanently');//uuecs.com 将原有的302重定向改为301永久重定向,避免被搜索引擎封杀category/goods页
        @header($string . "\n", $replace);
        exit();
    }

 

过滤微信昵称中的表情

阿牛阅读(2829)

function filterNickname($nickname)
{
    $nickname = preg_replace('/[\x{1F600}-\x{1F64F}]/u', '', $nickname);
    $nickname = preg_replace('/[\x{1F300}-\x{1F5FF}]/u', '', $nickname);
    $nickname = preg_replace('/[\x{1F680}-\x{1F6FF}]/u', '', $nickname);
    $nickname = preg_replace('/[\x{2600}-\x{26FF}]/u', '', $nickname);
    $nickname = preg_replace('/[\x{2700}-\x{27BF}]/u', '', $nickname);
    $nickname = str_replace(array('"','\''), '', $nickname);
    return addslashes(trim($nickname));
}

过滤微信昵称中的表情 ,不过滤 HTML 符号。常用方法

解决ECSHOP提示“用户名已经存在,请重新输入”

阿牛阅读(2987)

今天客户出现个奇怪问题,无论输入什么会员都提示用户名已存在。

按照往常经验,大部分是语言编码出错引起,查询user.php ,以及语言包,lib_transport.php 均无发现异常。

随即度娘:结果如下:

首先ecshop整合过uc,那么他是用ucenter即$user->check_user($username) 来验证会员是否ecshop注册过,是否存在,如果没有整合好uc,必然报错

其次检查js/user.js 中的验证出现问题。。。。略。。

那么,依次排查includes/modules/integrates/ecshop.php ,文件正常,并直接打开验证网址 user.php?act=is_registered&username=test11124 (test11124是用户名,也是返回ture),这里显示,程序工作正常的,那么问题出现在js脚本判断上。

按照网上的办法,修改result = result.replace(/\n|\r/g, ”); 修改后未能处理,这里把该函数修改为

if ( result == ‘ture’ ) 改为 if(result.indexOf(“ok”) > 0 ),又简单又方便,同理,email的验证函数也是要修改。
如:

function check_email_callback(result)
{
	if(result.indexOf("ok") > 0 )

搞定罗。

PHP 过滤常用标签的正则表达式

阿牛阅读(2269)

在 php 项目中,经常要用到一些过滤标签的正则表达式,收藏一下备用:

$str=preg_replace("/\s+/", " ", $str); //过滤多余回车
$str=preg_replace("/<[ ]+/si","<",$str); //过滤<__("<"号后面带空格)
$str=preg_replace("/<\!–.*?–>/si","",$str); //注释
$str=preg_replace("/<(\!.*?)>/si","",$str); //过滤DOCTYPE
$str=preg_replace("/<(\/?html.*?)>/si","",$str); //过滤html标签
$str=preg_replace("/<(\/?head.*?)>/si","",$str); //过滤head标签
$str=preg_replace("/<(\/?meta.*?)>/si","",$str); //过滤meta标签
$str=preg_replace("/<(\/?body.*?)>/si","",$str); //过滤body标签
$str=preg_replace("/<(\/?link.*?)>/si","",$str); //过滤link标签
$str=preg_replace("/<(\/?form.*?)>/si","",$str); //过滤form标签
$str=preg_replace("/cookie/si","COOKIE",$str); //过滤COOKIE标签
$str=preg_replace("/<(applet.*?)>(.*?)<(\/applet.*?)>/si","",$str); //过滤applet标签
$str=preg_replace("/<(\/?applet.*?)>/si","",$str); //过滤applet标签
$str=preg_replace("/<(style.*?)>(.*?)<(\/style.*?)>/si","",$str); //过滤style标签
$str=preg_replace("/<(\/?style.*?)>/si","",$str); //过滤style标签
$str=preg_replace("/<(title.*?)>(.*?)<(\/title.*?)>/si","",$str); //过滤title标签
$str=preg_replace("/<(\/?title.*?)>/si","",$str); //过滤title标签
$str=preg_replace("/<(object.*?)>(.*?)<(\/object.*?)>/si","",$str); //过滤object标签
$str=preg_replace("/<(\/?objec.*?)>/si","",$str); //过滤object标签
$str=preg_replace("/<(noframes.*?)>(.*?)<(\/noframes.*?)>/si","",$str); //过滤noframes标签
$str=preg_replace("/<(\/?noframes.*?)>/si","",$str); //过滤noframes标签
$str=preg_replace("/<(i?frame.*?)>(.*?)<(\/i?frame.*?)>/si","",$str); //过滤frame标签
$str=preg_replace("/<(\/?i?frame.*?)>/si","",$str); //过滤frame标签
$str=preg_replace("/<(script.*?)>(.*?)<(\/script.*?)>/si","",$str); //过滤script标签
$str=preg_replace("/<(\/?script.*?)>/si","",$str); //过滤script标签
$str=preg_replace("/javascript/si","Javascript",$str); //过滤script标签
$str=preg_replace("/vbscript/si","Vbscript",$str); //过滤script标签
$str=preg_replace("/on([a-z]+)\s*=/si","On\\1=",$str); //过滤script标签
$str=preg_replace("/&#/si","&#",$str); //过滤script标签

 

安全提醒 请远离帝国备份

阿牛阅读(1884)

万能cookies登陆你的帝国  不商量

ebak_loginebakckpass:119770adb578053dcb383f67a81bcbc6 
ebak_bakrnd:35y5cCnnA4Kh 
ebak_bakusername:admin 
ebak_baklogintime:4070883661

超简单 2步更换ecshop后台编辑器kindeditor

阿牛阅读(1981)

前言,ecshop自带编辑器实在是老的牙都掉了,安全漏洞更不用说了。而别的比如百度 编辑器更改又麻烦,jquery兼容问题就在哪里,工作量也大。只有kindeditor比较更快适应ecshop系统。
他有批量上传文件,百度地图,文件管理功能,为毛不用呢。

a2

a1711115245
(1) 下载编辑器源代码

http://kindeditor.net/down.php 解压到includes文件夹,如kindeditor2015

(2)修改admin/includes/lib_main.php 修改或替换

function create_html_editor($input_name, $input_value = '')
{
    global $smarty;
    $kindeditor="<script charset='gbk' src='../includes/kindeditor2015/kindeditor-min.js'></script>
    <script>
        var editor;
            KindEditor.ready(function(K) {
                editor = K.create('textarea[name=\"$input_name\"]', {
                    allowFileManager : true,
                    width : '900px',
                    height: '500px',
                    resizeType: 0    //固定宽高
                });
            });
    </script>
    <textarea id=\"$input_name\" name=\"$input_name\" style='width:900px;height:500px;'>$input_value</textarea>
	<input type=\"submit\" value=\"提交\" />
    ";
    $smarty->assign('FCKeditor', $kindeditor);  
}

(3) 登陆后台,刷新下页面。就这么愉快的完成了。~

(4)另外有客户反应gbk编码下会显示乱码。那么更改lang/zh_CN.js 为gbk编码就可以了。

(5)再啰嗦一个,安全起见。删除下php\demo.php 较好。

 

ECSHOP屏蔽恶意IP段 屏蔽刷屏行为

阿牛阅读(1527)

pinglun

据客户反映,后台短时间无故增加多个垃圾评论,均来自IP188.143.232.*

(1)遂操刀修改 includes/init.php 约90行增加

//Powered By UUECS QQ909065309 HTTP://Www.UUECS.Com
$temp=explode(".",real_ip());//获取ip
if($temp[0].".".$temp[1].".".$temp[2]=='188.143.232'){//屏蔽你YA
die("update..");//提示升级~
}
//Powered By UUECS QQ909065309 HTTP://Www.UUECS.Com

修改完毕,你爷爷的,看你还嚣张。这个IP被屏蔽无法访问网站了。~~

(2)当然,垃圾评论还是得删掉的。

登陆后台。SQL查询: delete  from ecs_comment where ip_address like ‘188.143.232%’;

(3)查根。查看下服务器日志,访客通过何种手段写入的数据库。比如comment_add.php

(4) 在comment_add.php  写入comment数据前设定个SESSION验证(这个程序在某服务商大部分模板下存在,不严谨)

搜索比如:$sql = “INSERT INTO “.$GLOBALS[‘ecs’]->table(‘comment’)

前增加:

if (!isset($_SESSION['send_time']))
 {
 $_SESSION['send_time'] = 0;
 }
 $cur_time = time();
 if (($cur_time - $_SESSION['send_time']) < 60) // 小于60秒禁止发评论
 {
 show_message('对不起,服务器很忙,你歇歇好不~');//提示语言自己编了~
 }

在写入数据库后更改session值:

如搜索$cmid = $GLOBALS[‘db’]->insert_id();后增加以下代码

$_SESSION[‘send_time’] = $cur_time;
(5)整个过程 10分钟左右,世界突然清净了……

阿牛ECSHOP 更专业 更方便

关于我们联系我们