- 博客(51)
- 资源 (1)
- 收藏
- 关注
原创 利用redis限制访问频率
直接上代码,限制单位时间内只能访问多少次 $redis = new redis(); $redis->connect('127.0.0.1', 6379); $key = "download"; $check = $redis->setnx($key,1); if(!$check) ...
2018-08-27 19:10:04 1193
原创 sleep到底占不占用资源问题
sleep不占用系统资源,它会把cpu的控制权交换给内核,内核会再schedule到另一个进程。如果是web的话,资源就很多了HTTP连接,mysql连接,php-fpm进程数等等,这些都是需要考虑的本来一个请求1秒执行完,你sleep(9)秒,那这个原本一秒的请求现在需要10秒,同时也就占用php-fpm10秒,要知道php-fpm进程数是有限的,在高并发的情况下,后面的请求就已经无...
2018-08-14 19:21:14 13289 5
原创 mysql修复数据表
由于断电,第二天来上班时测试库的数据库已经毁坏提示需要修复,可以在mysql的bin目录下找到myisamchkmyisamchk -c -r ../data/mysql/proc.MYI然后myisamchk 工具会帮助你恢复数据表的索引。重新启动mysql,问题解决。
2015-09-18 15:26:39 592
原创 利用mysql存储过程循环更新会员
BEGIN DECLARE done INT DEFAULT 0; #字段 DECLARE insertid INT; DECLARE name CHAR(50) CHARACTER SET utf8; DECLARE cellphone CHAR(50); DECLARE result INT DEFAULT 0; DECLARE insertable CHAR(50);
2015-09-16 16:44:46 1665
原创 有关session阻塞问题
最近遇到一个问题,有关session阻塞的问题。是PHP请求API接口,接口反应时间慢,导致其他页面必须等待接口返回后才能执行,查来查去最终找到了是session问题。当然这种问题只有在同一个浏览器下才会发生。网上查找资料得知,由于PHP的Session信息是写入文件的,1个客户端占有1个session文件。因此,当 session_start被调用的时候,该文件是被锁住的,而且是以读写模
2015-02-04 18:23:31 1646
原创 IE下面获取不到session
本地环境IE浏览器获取不到session,验证码一直提示错误导致无法登录。这个是由于域名带有下划线导致IE获取不到session。所以域名尽量不要带有下划线。或者在PHP中加入 header('P3P: CP="ALL ADM DEV PSAi COM OUR OTRo STP IND ONL"'); ...
2014-12-02 11:53:35 1925
原创 PHP约瑟夫问题,丢手帕问题
无意间看到了这个丢手帕问题,于是乎自己动手写了写这个的解决方法。 $array = array(1,2,3,4,5,6,7,8,9,10);$flag = 0;while (count($array)>1){ if(($flag+1)%3 == 0) { echo PHP_EOL.$array[$flag]."<br>"; ...
2014-11-17 11:26:08 675
原创 thinkPHP自动验证无效,没有报错
thinkPHP自动验证无效,或者验证的时候没有提示。出现这样的问题就让我们来看看model类里的自动验证函数。先来看看自动验证的使用问题
2014-11-13 16:30:35 1586
转载 PHP检验身份证代码
代码一:此段代码对不同的PHP配置可能会有警告,所以在此之前我们加入一个error_reporting(E_ALL &~E_NOTICE); 来屏蔽掉这个警告。function isIdCard($number) { //加权因子 $wi = array(7, 9, 10, 5,8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2);
2014-10-29 18:13:59 666
转载 This function has none of DETERMINISTIC, NO SQL解决办法
This function has none of DETERMINISTIC, NO SQL解决办法创建存储过程时出错信息:ERROR 1418 (HY000): This function has none of DETERMINISTIC, NOSQL, or READS SQL DATA in its declaration and binary logging isenabl
2014-08-15 18:58:08 1208
翻译 magento教程:新建一个新闻管理插件(一)
插件概述我们将以新闻管理插件来举例说明开发插件中的一些实践和限制。这个插件的主要功能是让商家能够在后台管理新闻并且在前台能看到新闻。如果你想跳过此例,你可以到此篇内容底部去看看附录中的建议。代码配置 选择我们的代码池 Notice1、如果你的插件打算给社区用,那么就应该写在Community文件夹中。2、为了提高可读性和使模版和模块代码之间更为清
2014-05-15 19:26:30 1123
转载 MySql外键设置详解
(1) 外键的使用: 外键的作用,主要有两个: 一个是让数据库自己通过外键来保证数据的完整性和一致性 一个就是能够增加ER图的可读性 有些人认为外键的建立会给开发时操作数据库带来很大的麻烦.因为数据库有时候会由于没有通过外键的检测而使得开发人员删除,插入操作失败.他们觉得这样很麻烦 其实这正式外键在强制你保证数据的完整性和一致性.这是好事儿.
2014-05-06 18:25:06 774
翻译 Magento概述
Magento概述Magento是一个很有发展前进,能灵活控制的,提供在线购物的电子商务平台。Magento直观的后台管理、强大的营销、搜索引擎优化、强大的目录管理工具,强有力的为电商们建立定制符合自己需求的商务应用平台。Magento是一个以模块来划分,基于mvc架构用PHP编写的应用。每个模块之间都是以功能来区分,这有效的减少了模块之间的依赖关系。Magento的目录结构
2014-04-19 18:09:51 1037
原创 发现一个有趣的问题啊
今天居然看到公司网站被复制了,具体网址我就不爆了。网站后面加了这个后缀edgesuite.net,百度google一查居然发现很多网站都居然有这个后缀。搞得还以为自己网站被攻击了,复制的网站是样式结构都一模一样,数据库都可能一样。但是后台却登陆不了。经过查询才知道,这个是用了CDN的原因。CDN这个弄出来的一个站点。
2014-03-21 18:39:44 884
原创 给大家推荐两款js验证插件
首先说说validation.js,这是一款比较常用的表单验证插件了,因为是magento自身加进去的插件,也是比较熟悉。validation.js是基于prototype表单前端验证工具,简单易用。下面说说怎么用这个插件。首先你需要引入js库 prototype.js、validation.js、effects.js引入之后呢,就需要开始写你的代码了。var form
2014-03-19 19:37:21 1251
原创 JS关于对时间的处理
在做网站的时候经常会遇到一些有关于对时间的处理问题,如果服务器在国内针对的国内的用户群那还好说。如果你的服务器是放在国外的,那你就要考虑到一些关于时间的问题了。下面是在magento中增加一个有关于js倒记时的js,这个在商城里面很常见的,代码如下: <?php $time_s = time(); ?> jQuery(function(){ var dateT
2014-02-28 22:46:47 913 1
原创 一道面试题统计胜负数的
数据如下datetm result12009-9-10 胜2009-9-10 胜2009-9-10 负2009-9-16 胜2009-9-16 负2009-9-16 胜2009-9-16 胜2009-9-16 胜2009-9-17 胜2009-9-17 负查询语句select convert(varchar(10) ,datetm,120)
2014-02-20 19:18:04 964 1
原创 PHP递归创建文件夹
直接上代码function make_dir($dir){ if(!is_dir(dirname($dir))){ make_dir(dirname($dir)); } return mkdir($dir);}
2014-02-20 19:12:01 1504
原创 magento读取数据
Magento自定义查询sql· //select query · $read = Mage::getSingleton('core/resource')->getConnection('core_read'); · //make connection · $qry = "select name FROM user_data WHERE id=1 LIMIT 1 "; //q
2014-02-19 20:54:26 1998
转载 重置mysql的root密码
1、停止MySQL服务 执行:/etc/init.d/mysql stop,你的机器上也不一定/etc/init.d/mysql也可能是/etc/init.d/mysqld 2、跳过验证启动MySQL /usr/local/mysql/bin/mysqld_safe --skip-grant-tables >/dev/null 2>&1 & 注:如果mysqld_s
2014-02-19 20:38:14 597
转载 PHP获取文件的扩展名
有幸看到这样一篇文章和文章的评论。一直以来取文件后缀名都是用自己熟悉的方法,下面介绍几种方法: 第1种方法: function get_extension($file) { substr(strrchr($file, '.'), 1); } 第2种方法: function get_extension($file) { return substr($file, strrpos
2014-01-21 18:27:58 771
原创 maysql有关取整及修改小数位值的问题
查阅了一些有关maysql取整及修改小数的一些方法。例如mysql截取保留小数点后两位或者一位,主要用到下面三个函数INSTR(str,substr)返回子串substr在字符串str中的第一个出现的位置。这与有2个参数形式的LOCATE()相同,除了参数被颠倒。mysql> select INSTR('foobarbar', 'bar'); -> 4my
2014-01-13 08:56:03 998
转载 magento 程序执行流程和架构
因Magento 基于Zend 框架而写,它的程序架构除了重写View 层外,其他都和zf差不多,先看下Magento的引导启动、分发、MVC流程图,草草而作,有误烦请指出:以下是分别详细解读分析Magento 程序的各层次源码:MAGENTO_ROOT:入口文件 /index.php|1.判断php版本是否大于5.22.引入Magento主要的中心类/
2014-01-02 23:35:20 928
转载 如何让magento显示错误提示
如何显示Magento 错误信息!Magento install error – Exception printing is disabledHere is a known error which can occur when installing Magento:当安装Magento时,这里有一个众所周知的错误提示There has been an error processing
2014-01-02 23:09:33 1642
原创 JS面向对象方法
function Person(){}; Person.prototype = { events:[], bind: function(func){ this.events.push(func); }, trigger: function(){ for(var i=0; i<this.events.length; i++){ this.events[i](); } }
2013-12-11 21:33:03 513
原创 magento的google站点地图的生成
先说说google站点地图,下面摘抄自网络的内容Google网站地图(sitemap)是Google提供给网站管理员的一个工具,来提高网站被收录的网页数目。一般来说,搜索引擎蜘蛛会跟着链接爬行到你网站的所有网页。但很多时候,由于种种原因,并不是所有网页都能被收录进搜索引擎数据库。比如说,你的网站是数据库动态生成的,URL中带有参数,一些网页离主页太远,你的网站PR值太低,新的网页可能过
2013-11-15 20:01:39 1642
原创 magento产品页面301/302重定向
首先说说301和302重定向在网站当中由于我们的一些操作导致原来的链接不能访问了,如域名变更了或者目录被删除了,为了不网站的排名因为网址的变化而收到影响,原来的链接能够访问,我们就需要对原来的链接进行重定向到新的地址。301和302有什么区别302重定向是暂时的重定向,搜索引擎会抓取新的内容而保留旧的网址。因为服务器返回302代码,搜索引擎认为新的网址只是暂时的。301重定向是
2013-11-15 19:36:21 3167
转载 怎么取消SVN的项目目录
今天被同事问到这个问题,突然间意识到自己还有没有用过这个功能,于是上网查了一下。第一种方法:直接、逐级地删除目标目录中的隐藏属性的.svn目录第二种方法:如果用的是TortoiseSVN客户端,则先在另外一处建立一个新目录A,右键点住svn目录并拖动到A上松手,在弹出的菜单中选择“SVN将版本控制的条目复制到目标位置”第三种方法(网上看到的,未验证):
2013-11-14 19:28:44 975
paypal支付文档及示例
2013-11-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人