- 博客(36)
- 收藏
- 关注
原创 PHP的错误类型
一,程序本身的错误 这种错误是比较容易就可以处理的错误,比如说语法错误或者是编译器无法解析,这些错误在编译的时候,就会不通过编译,然后可以根据错误的提示,找到具体的错误代码。但当使用eval()执行的代码发生错误时,在编译期间是发现不了,它只能等到代码在执行的过程中,对其编译产生错误,如我们执行下列代码,就会在执行过程中出现错误:[php] view plain cop
2017-02-17 19:49:44 846
原创 MySql的join(连接)查询 (三表 left join 写法)
1、内连接:将两个表中存在连结关系的字段符合连接条件的记录形成记录集Select A.name,B.name from A inner join B on A.id=B.id和Select A.name,B.name from A,B where A.id=B.id结果是一样的(内连接的inner关键字可省略);2、外连接:分为左外连接和右外连接左连接A、B表结果包括A的全部记录和
2017-01-11 17:51:20 1423
原创 setcookie各个参数详解
定义和用法setcookie()函数向客户端发送一个 HTTP cookie。cookie是由服务器发送到浏览器的变量。cookie 通常是服务器嵌入到用户计算机中的小文本文件。每当计算机通过浏览器请求一个页面,就会发送这个cookie。cookie的名称指定为相同名称的变量。例如,如果被发送的 cookie 名为 "name",会自动创建名为 $user 的变量,包含cookie 的
2016-12-28 18:52:56 10956
原创 linux 常用命令
1、cd命令:这是一个非常基本,也是大家经常需要使用的命令,它用于切换当前目录,它的参数是要切换到的目录的路径,可以是绝对路径,也可以是相对路径。cd /root/Docements #切换到目录/root/Docements2、ls命令:这是一个非常有用的查看文件与目录的命令,list之意,它的参数非常多。ls -l #以长数据串的形式列出当前目录下的数据文件和目录3、grep命令:该命
2016-12-24 11:36:17 362
原创 XSS攻击及防御
XSS攻击 XSS攻击类似于SQL注入攻击,攻击之前,我们先找到一个存在XSS漏洞的网站,XSS漏洞分为两种,一种是DOM Based XSS漏洞,另一种是Stored XSS漏洞。理论上,所有可输入的地方没有对输入数据进行处理的话,都会存在XSS漏洞,漏洞的危害取决于攻击代码的威力,攻击代码也不局限于script。DOM Based XSS DOM Based
2016-12-22 10:16:07 434
原创 如何防御SQL注入
1、检查变量数据类型和格式如果你的SQL语句是类似where id={$id}这种形式,数据库里所有的id都是数字,那么就应该在SQL被执行前,检查确保变量id是int类型;如果是接受邮箱,那就应该检查并严格确保变量一定是邮箱的格式,其他的类型比如日期、时间等也是一个道理。总结起来:只要是有固定格式的变量,在SQL语句执行前,应该严格按照固定格式去检查,确保变量是我们预想的格式,这样很大程度上
2016-12-22 10:13:49 553
原创 python与php的异同,和各自的优缺点?
1.语法:PHP 的语法看起来就像没有经过精心设计一样,很随意。有的语法看似很方便(用点来连接字符串), 但是却为之后扩展造成了很多麻烦(点没法用于访问对象的成员), 再比如比较蛋疼的命名空间的语法。Python 相比之下要好一点,但是 Python2 和 Python3 直接存在着一些不兼容的语法变动。2.编写 HTML 模版:PHP 可以非常方便地直接用来编写 HTML 模版,Python
2016-12-20 08:51:09 9865 2
原创 各大框架的特点
Thinkphp优点1.容易上手,配置、部署方便2.编译缓存机制有利于性能提升3.内置了对REST的支持MVC和OO啥的就不说了...缺点1.麻烦的URL路由*1 需要手动建立模型与数据库的关联缺点:需要进行一系列不必要的配置,与定义模型后自动生成数据库表的行为相悖。*2 对数据库的抽象远远不够操作模型时有很强烈的操作数据库感觉,同时由于 2*1 需要手
2016-12-17 11:52:57 577
原创 网站的文件资源如何优化
1、文件合并(目的是减少http请求):Web性能优化最佳实践中最重要的一条是减少HTTP 请求,它也是YSlow中比重最大的一条规 则。减少HTTP请求的方案主要有合并JavaScript和CSS文件、CSS Sprites、图像映射 (Image Map)和使用Data URI来编码图片。CSS Sprites和图像映射现在已经随处可见了,但由于IE6和IE7不支持Data URI以及性能问题
2016-12-08 14:14:17 332
原创 Header:请求头参数详解
Header解释示例Accept指定客户端能够接收的内容类型Accept: text/plain, text/html,application/jsonAccept-Charset浏览器可以接受的字符编码集。Accept-Charset: iso-8859-5Accept-Encoding指定浏览器可以支持的web服务器返回内
2016-12-08 10:11:40 2779
原创 Ajax同步和异步的区别
ajax给了我们很多方便,不用页面跳来跳去,也让页面的功能越来越强大,用ajax可以实现输入框的自动匹配、用户注册验证用户名是否存在、登录验证其密码是否正确等。但是昨天,做一个搜索地图模块时,纠结了一个下午加今天一个早上,就因为不懂ajax的基本原理,导致一直调试,同样的值,在一个地方alert两次,前面为空,后面可以。通过查阅相关资料,发现其根本原因就是ajax的异步特点。在你调用的服务器还未响
2016-12-08 09:52:11 4383
原创 Apache与Nginx的优缺点比较
Apache与Nginx的优缺点比较 1、nginx相对于apache的优点: 轻量级,同样起web 服务,比apache 占用更少的内存及资源 抗并发,nginx 处理请求是异步非阻塞的,而apache 则是阻塞型的,在高并发下nginx 能保持低资源低消耗高性能 高度模块化的设计,编写模块相对简单 社区活跃,各种高性能模块出品迅速啊 apache 相对于nginx 的优
2016-12-07 20:39:49 278
原创 OSI七层模型的每一层都有哪些协议
由低到高谈到网络不能不谈OSI参考模型,OSI参考模型(OSI/RM)的全称是开放系统互连参考模型(Open System Interconnection Reference Model,OSI/RM),它是由国际标准化组织ISO提出的一个网络系统互连模型。虽然OSI参考模型的实际应用意义不是很大,但其的确对于理解网络协议内部的运作很有帮助,也为我们学习网络协议提供了一个很好的参考......
2016-12-07 19:51:52 2737
原创 php缓存技术
[导读] 全页面静态化缓存也就是将页面全部生成html静态页面,用户访问时直接访问的静态页面,而不会去走php服务器解析的流程。此种方式,在CMS系统中比较常见,比如dedecms;一种比较常用的实现方式是用输出缓存:Ob1、全页面静态化缓存也就是将页面全部生成html静态页面,用户访问时直接访问的静态页面,而不会去走php服务器解析的流程。此种方式,在CMS系统中比较常见
2016-12-07 19:13:54 253
原创 sql语句优化
查询语句的优化是SQL效率优化的一个方式,可以通过优化sql语句来尽量使用已有的索引,避免全表扫描,从而提高查询效率。最近在对项目中的一些sql进行优化,总结整理了一些方法。1、在表中建立索引,优先考虑where、group by使用到的字段。 2、尽量避免使用select *,返回无用的字段会降低查询效率。如下:SELECT * FROM t 优化方式:使用具体的字段代替*,
2016-12-07 16:30:10 250
原创 什么是跨域?怎么解决跨域问题?
什么是跨域?跨域,指的是浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对JavaScript施加的安全限制。所谓同源是指,域名,协议,端口均相同,不明白没关系,举个栗子:http://www.123.com/index.html 调用 http://www.123.com/server.PHP (非跨域)http://www.123.com/i
2016-12-02 11:02:28 733
原创 点击按钮出现60秒倒计时js代码
DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> html xmlns="http://www.w3.org/1999/xhtml"> head> meta http-equiv="Content-Typ
2016-11-25 20:10:47 5987 1
原创 用python写等腰三角、倒三角和菱形
#等腰三角for i in range(1,6): for j in range(5-i): print j*'', print (2*i-1)*'*'print '\n','是等腰三角形'#倒三角for i in reversed(range(1,6)): for j in range(5-i): print
2016-11-14 19:16:36 18709
原创 python的水仙花数
打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。 这题也是送分题,只要能把任意三位数的百位、十位、个位拆解出来就好办了。思路:将任意3位数除以100再向下取整,即可得到百位数。将这个3位数减去(百位数*100),即可去掉百位数,然后除以10再向下取整,即可得到十位数。将这个3位数
2016-11-14 19:08:27 2281 1
原创 python的九九乘法表
for i in range(1,10): for j in range(1,i+1): print i,'x',j,'=',i*j, print '\n'输出结果如下:
2016-11-14 19:02:57 1062
原创 Ajax的定义及ajax的优缺点
什么是Ajax?Ajax是异步Javascript和XML(AsynchronousJavas cript and XML)的英文缩写。Ajax的核心理念在于使用XMLHttpRequest对象发送异步请求。Ajax并不是一门新的语言或技术,它实际上是几项技术按一定的方式组合在一起,共同的协作中发挥各自的作用。ajax的优点1、最大的一点是页面无刷新,用户的体验非常好。
2016-11-08 11:03:40 593
原创 数据库设计三大范式
数据库设计范式什么是范式:简言之就是,数据库设计对数据的存储性能,还有开发人员对数据的操作都有莫大的关系。所以建立科学的,规范的的数据库是需要满足一些规范的来优化数据数据存储方式。在关系型数据库中这些规范就可以称为范式。什么是三大范式:第一范式:当关系模式R的所有属性都不能在分解为更基本的数据单位时,称R是满足第一范式的,简记为1NF。满足第一范式是关系模式规范化的最低要求
2016-11-07 20:10:08 196
原创 单向散列加密,对称加密,非对称加密
(1)、对称加密算法常用的算法包括:DES(Data Encryption Standard):数据加密标准,速度较快,适用于加密大量数据的场合。3DES(Triple DES):是基于DES,对一块数据用三个不同的密钥进行三次加密,强度更高。AES(Advanced Encryption Standard):高级加密标准,是下一代的加密算法标准,速度快,安全级别高;1
2016-11-07 19:54:59 333
原创 nginx的五种负载算法模式
nginx 负载均衡5种配置方式1、轮询(默认) 每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。 2、weight 指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。 例如: upstream bakend { server 192.168.0.14 weight=10; ser
2016-11-03 19:01:58 197
原创 memcache和redis的区别
现在新浪微博大规模的都是基于redis来架构的。redis和memecache的不同在于:1、存储方式:memecache 把数据全部存在内存之中,断电后会挂掉,数据不能超过内存大小redis有部份存在硬盘上,这样能保证数据的持久性。2、数据支持类型:redis在数据支持上要比memecache多的多。3、使用底层模型不同:新版本的redis直接自己构建了VM 机制
2016-11-03 19:00:27 259
原创 ecshop购物车原理
一 、概念 购物车相当于现实生活中超市的购物车,不同的是一个是实体车,一个则是虚拟车。用户可以在购物网站的不同页面之间跳转,已选购自己喜欢喝需要的商品,点击购买时,该商品就会自动保存在你的购物车中,重复选购后,最后将选购的所有商品放在购物车中统一付款结账,这也可以让用户有更好的体验度。服务器通过追踪每个用户的行动,用来保证结账时每件商品都物有其主。二、购物车功能
2016-11-03 18:57:35 756
原创 JSON和JSONP的区别
JSON和JSONP的区别总结如下:JSON是一种数据格式的定义,JSONP则是数据传输的方式。一个是静止的,一个是动态的。JSON是一种数据交换格式,而JSONP是一种依靠开发人员的聪明才智创造出的一种非官方跨域数据交互协议。json的特点:1)、基于纯文本,跨平台传递极其简单;2)、Javascript原生支持,后台语言几乎全部支持;3)、轻量级数据
2016-11-01 20:50:06 418
原创 app 接口
class Response{ const JSON='json'; /** * 综合方式方式输出通讯数据 * @ param inteage $code 状态码 * @ param string $message 提示信息 * @ param array $data 数据 * @ param string $type 数据输出类型 * @ re
2016-10-31 15:12:20 231
转载 在PHP中使用CURL实现GET和POST请求的方法
1.CURL介绍CURL是一个利用URL语法规定来传输文件和数据的工具.支持很多协议,如HTTP、FTP、TELNET等。幸运的是PHP也支持CURL库。本文将介绍curl的一些高级特性,以及在PHP中如何运用它。2.基本结构在学习更为复杂的功能之前,先来看一下在PHP中建立CURL请求的基本步骤:(1)初始化 curl_init()
2016-10-31 10:00:34 247
原创 mysql 字段类型
char(length)char类型最大长度是255个字符。当插入到表中的字符串的长度小于length时候,将给字段右边不够的部分用空格填补。varchar(length)varchar的最大长度是255个字符。varchar和char几乎一样,区别在于varchar是变长的类型,不会填补空格。tinytexttinytext最大长度是255字符。texttext最大长
2016-10-24 16:02:41 347
原创 MYSQL中 inner join left join right join的区别
left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录 right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录inner join(等值连接) 只返回两个表中联结字段相等的行举例如下: --------------------------------------------表A记录如下:aID aNum1
2016-10-24 15:45:07 408
原创 Myisam和innodb的区别?
MySQL默认采用的是MyISAM。MyISAM不支持事务,而InnoDB支持。InnoDB的AUTOCOMMIT默认是打开的,即每条SQL语句会默认被封装成一个事务,自动提交,这样会影响速度,所以最好是把多条SQL语句显示放在begin和commit之间,组成一个事务去提交。InnoDB支持数据行锁定,MyISAM不支持行锁定,只支持锁定整个表。即MyISAM同一个表上的读锁和写锁是互斥的,My
2016-10-24 15:37:53 184
原创 mysql数据库中char与varchar类型的区别
在建立数据库表结构的时候,为了给一个String类型的数据定义一个数据库的数据库类型,一般参考的都是char或者varchar,这两种选择有时候让人很纠结,今天想总结一下它们两者的区别,明确一下选择塔门的理由。 首先明确的是,char的长度是不可变的,而varchar的长度是可变的,也就是说,定义一个char[10]和varchar[10],如果存进去的是‘csdn’,那么char所
2016-10-24 15:33:26 6381
原创 mysql主从复制
mysql的主从复制怎么做,步骤如下:1、主从服务器分别作以下操作: 1.1、版本一致 1.2、初始化表,并在后台启动mysql 1.3、修改root的密码2、修改主服务器master: #vi /etc/my.cnf [mysqld] log-bin=mysql-bin //[必须]启用二进制日志 se
2016-09-07 11:30:18 214
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人