PHP
快乐de馒头
这个作者很懒,什么都没留下…
展开
-
PHP 防刷票
基于 PHP,下面介绍防刷票的一些技巧:1、HTTP_REFERER : 校验 $_SERVER['HTTP_REFERER']。可伪造,使用 CURL。curl_setopt($ch, CURLOPT_REFERER, 'HTTP://www.baidu.com');(攻击手段)2、IP限制:加上 IP 投票限制。可伪造,使用 CURL。$ip = ***.***.***.***;$h...转载 2015-07-02 14:03:48 · 768 阅读 · 0 评论 -
PHP漏洞全解(七)-Session劫持
本文主要介绍针对PHP网站Session劫持。session劫持是一种比较复杂的攻击方法。大部分互联网上的电脑多存在被攻击的危险。这是一种劫持tcp协议的方法,所以几乎所有的局域网,都存在被劫持可能。服务端和客户端之间是通过session(会话)来连接沟通。当客户端的浏览器连接到服务器后,服务器就会建立一个该用户的session。每个用户的session都是独立的,并且由服务器来维护。每...转载 2015-06-10 14:16:09 · 757 阅读 · 0 评论 -
判断远程url是否有效的几种方法
前提需要判断远程URL是否有效,远程url包括远程图片,网页,视频等等元素解决办法:使用PHP解决使用file_get_contents函数,不过优缺点如果url无法访问,会出现终止程序问题 使用curl返回,然后判断是否正确执行 使用get_headers函数,根据HTTP返回值查看是否有200使用js解决:使用原生的js函数ActiveXObject,仅支持ie内核的...转载 2015-06-10 14:04:07 · 1870 阅读 · 0 评论 -
POST方式跨域上传文件
JSONP请求有限制: 第一,不能跳出两层, 第二,不支持POST.往往解决跨域POST请求的方案是个"古老"方法, 请求同域下的iframe.服务器端:需要附加头信息:[php]view plaincopyheader('Access-Control-Allow-Origin:*'); header('Access-Control-Allow-Method...转载 2015-06-10 14:00:26 · 1696 阅读 · 0 评论 -
php://input 输入流
在使用xml-rpc的时候,server端获取client数据,主要是通过php输入流input,而不是$_POST数组。所以,这里主要探讨php输入流php://input 对一php://input介绍,PHP官方手册文档有一段话对它进行了很明确地概述。 “php://input allows you to read raw POST data. It is a less memory...原创 2015-06-10 11:57:27 · 558 阅读 · 0 评论 -
JQuery Easy Ui dataGrid 数据表格
数据表格 - DataGrid内容概况 使用方法 数据表格属性 数据列属性 编辑 数据视图 事件 方法继承$.fn.panel.defaults,使用$.fn.datagrid.defaults重载默认值。.数据表格显示的数据以表格的形式,并提供了丰富的选择,排序,分组和编辑数据的支持。这个数据表格被设计以缩短开发时间,并要求开发商没有具体的知识。它是轻...转载 2015-05-19 14:05:50 · 756 阅读 · 0 评论 -
MySQL 获得当前日期时间(以及时间的转换)
1.1 获得当前日期+时间(date + time)函数:now()除了 now() 函数能获得当前的日期时间外,MySQL 中还有下面的函数:current_timestamp()current_timestamplocaltime()localtimelocaltimestamp()localtimestamp这些日期时间函数,都等同于...转载 2015-05-15 08:45:31 · 1546 阅读 · 0 评论 -
php 判断汉子字母和数字 类型
<?function checkStr($str){ $output=''; $a=ereg('['.chr(0xa1).'-'.chr(0xff).']', $str); $b=ereg('[0-9]', $str); $c=ereg('[a-zA-Z]', $str); if($a && $b && $c){ $...转载 2015-05-02 20:53:12 · 1014 阅读 · 0 评论 -
PHP curl 模拟用户登录
fakelogin.php//模拟post提交$url='http://www.xxxxx.com/member/login.php'; //表单的action处理程序 unset($post_data); $post_data['username'] = "name"; //帐号 $post_data['password'] = "pass"; //密码 $post_data['t...转载 2015-04-22 14:43:02 · 795 阅读 · 0 评论 -
PHP curl_模仿session登录
<?phpheader("content-type:text/html;charset='utf-8'");$post_url="http://localhost/session/action.php";$post_data="user=hkui&pwd=123";session_start(); $strCookie="PHPSESSID=".$_COOKIE['PHP...转载 2015-04-22 14:30:36 · 6525 阅读 · 1 评论 -
php 排除周末与节假日程序实例代码
date_default_timezone_set('prc');/*** 求取从某日起经过一定天数后的日期,* 排除周六周日和节假日* @param $start 开始日期* @param $offset 经过天数* @param $exception 例外的节假日* @param $allow 允许的日期(预留参数)* @return* examples:输...转载 2015-06-10 15:54:52 · 7375 阅读 · 0 评论 -
用ext_skel,实现一个PHP扩展,添加到PHP并调用
http://www.shinrun.com/PHP一、开始之前1. 系统环境:FreeBSD 8.22. AP环境:即已经装好的Apache2.2.17、PHP5.3.8环境3. PHP源码:下载稳定版本源码到当前用户的目录,如,下载PHP 5.3.8到/usr/home/abc下。4. 其它要求(如果你要编译整个PHP):autoconf版本为2.13或2.59;二、解压ph...原创 2015-06-11 11:44:23 · 465 阅读 · 0 评论 -
PHP 30分钟让你懂得正则表达式
目标30分钟内让你明白正则表达式是什么,并对它有一些基本的了解,让你可以在自己的程序或网页里使用它。如何使用本教程别被下面那些复杂的表达式吓倒,只要跟着我一步一步来,你会发现正则表达式其实并没有想像中的那么困难。当然,如果你看完了这篇教程之后,发现自己明白了很多,却又几乎什么都记不得,那也是很正常的——我认为,没接触过正则表达式的人在看完这篇教程后,能把提到过的语法记住80%以上的可能...转载 2015-06-23 10:59:31 · 767 阅读 · 0 评论 -
php中奖概率算法,可用于刮刮卡,大转盘等抽奖算法
<?php/* * 经典的概率算法, * $proArr是一个预先设置的数组, * 假设数组为:array(100,200,300,400), * 开始是从1,1000 这个概率范围内筛选第一个数是否在他的出现概率范围之内, * 如果不在,则将概率空间,也就是k的值减去刚刚的那个数字的概率空间, * 在本例当中就是减去100,也就是说第二个数是在1,900这个范围内筛选的。...转载 2015-07-02 08:25:21 · 476 阅读 · 0 评论 -
PHP概率算法(适用于抽奖、随机广告)
最近在做一个斗三国游戏用户抽奖活动的后台,看到一篇效率不错的算法介绍文章,特意转载收藏一下。原文如下:做网站类的有时会弄个活动什么的,来让用户参加,既吸引用户注册,又提高网站的用户活跃度。同时参加的用户会获得一定的奖品,有100%中奖的,也有按一定概率中奖的,大的比如中个ipad、iphone5,小的中个Q币什么的。那么我们在程序里必然会设计到算法,即按照一定的概率让用户获得奖品。先来看...转载 2015-07-02 08:18:38 · 716 阅读 · 0 评论 -
PHP RBAC权限管理设计
RBAC(Role-Based Access Control,基于角色的访问控制),就是用户通过角色与权限进行关联。简单地说,一个用户拥有若干角色,每一个角色拥有若干权限。这样,就构造成“用户-角色-权限”的授权模型。在这种模型中,用户与角色之间,角色与权限之间,一般者是多对多的关系。(如下图)角色是什么?可以理解为一定数量的权限的集合,权限的载体。例如:一个论坛系统,“超级管理员”、“版主...转载 2015-06-30 09:39:48 · 1026 阅读 · 0 评论 -
OA系统权限管理设计方案
由于公司的大规模发展,应上层要求OA系统要跟上发展的步伐,我决定把系统重做一遍。 现在做前期系统分析,目前遇到一个困难:权限设计方案。。 在百度很快找到了解决方案,以下资料转载自网络:不同职责的人员,对于系统操作的权限应该是不同的。优秀的业务系统,这是最基本的功能。l可以对“组”进行权限分配。对于一个大企业的业务系统来说,如果要求管理员为其下员工逐一分配系...转载 2015-06-30 08:53:22 · 684 阅读 · 0 评论 -
redis 安装 windows
php redis windowsredis 下载地址:https://github.com/phpredis/phpredis/downloads解压把php_redis.dll 和 php_igbinary.dll放在\php\php5.4.12\ext中然后在php.ini配置文件里添加如下代码:extension=php_igbinary.dllextensio...原创 2015-06-29 11:37:36 · 267 阅读 · 0 评论 -
php 远程上传(CURL)
<?php header('content-type:text/html;charset=utf8'); $curl = curl_init(); $data = array('img'=>'@'. dirname(__FILE__).'/img/login.gif'); curl_setopt($curl, CURLOPT_URL, "http://...转载 2015-06-29 11:15:53 · 306 阅读 · 0 评论 -
php 异步上传原理(iframe)
上传结果将显示在框架里,例如在a.php中输出内容将会展示在iframe框架中。<body><iframe name="up" src="about:blank" ></iframe><form target="up" method="post" action="a.php" enctype="multipart/form-data"...原创 2015-06-29 10:56:31 · 379 阅读 · 0 评论 -
PHP xampp 配置
一、配置虚拟主机1、修改httpd.conf文件目录 xampp => apach e=>httpd.conf(1).在文件内搜索 关键字“httpd-vhosts.conf”,找到如下字段# Virtual hostsInclude conf/extra/httpd-vhosts.conf//确保此段开头没有#(2).在文件内搜索关键字“AllowOverrid...原创 2015-06-23 11:47:25 · 652 阅读 · 0 评论 -
php自定义错误类,实现错误追踪功能
<?phpclass myErrorHandler { public $message=''; public $filename=''; public $line=0; public $vars=array(); public function __construct($message, $filename, $line, $vars){ ...转载 2015-06-23 11:13:25 · 499 阅读 · 0 评论 -
PHP 正则表达式表格数据转为数组
functionget_td_array($table){$table=preg_replace("'<table[^>]*?>'si","",$table);$table=preg_replace("'<tr[^>]*?>'si","",$table);$table=preg_repl...转载 2015-04-22 13:09:49 · 755 阅读 · 0 评论 -
php计算两个时间差并返回差多少天、时、分、秒
function timediff($begin_time,$end_time) { if($begin_time < $end_time){ $starttime = $begin_time; $endtime = $end_time; } else{ $starttime = $en...转载 2015-04-21 14:05:57 · 405 阅读 · 0 评论 -
PHP用socket模拟post之fsocketopen
地听说这个功能需求的时候,立即就蒙了,不骗大家!首先PHP的socket几乎都没使用过,其次没有听说过post还能用PHP的socket来模拟的呢!后来找了个案例看了看,才明白其实没有那么高深,只不过战地还不清楚post的原理和本质而已,其实本质就是发送给目的程序一个标志为post的协议串如下:POST /目的程序 HTTP/1.1Accept: */*Accept-Language:...转载 2015-04-19 11:53:10 · 1233 阅读 · 0 评论 -
php tree类的使用(树形结构)
<?phpinclude 'tree.class.php';//模拟数据库$data=array( array('id'=>1,'pid'=>0,'name'=>'一级栏目一'), array('id'=>2,'pid'=>0,'name'=>'一级栏目二'), array('id'=>3,'pid'=>...原创 2017-01-17 17:45:40 · 22760 阅读 · 2 评论 -
php CKEditor编辑器
一、下载安装下载地址:http://ckeditor.com/download使用文档:http://docs.ckeditor.com/#!/guide解压压缩文件引入ckeditor/ckeditor.js文件<!DOCTYPE html><html><head> <meta charset="utf-8"&g...原创 2017-01-15 21:12:36 · 286 阅读 · 0 评论 -
php 敏感关键词过滤
$badword = array( '张三','张三丰','张三丰田','上班');$badword1 = array_combine($badword,array_fill(0,count($badword),'*'));$bb = '我今天开着张三丰田上班';$str = strtr($bb, $badword1);echo $str;$...原创 2017-01-15 17:43:10 · 1978 阅读 · 0 评论 -
php 文件的分割与合并
/** * 文件的分割 * @param string $filename 文件名 * @param int $block 每块的大小 */function cut_file($filename,$block){ //判断是不是一个文件 if(!file_exists($filename)){ return false; } $fi...原创 2017-01-06 00:53:05 · 1016 阅读 · 0 评论 -
php 解决json gbk编码中文null问题
解决办法:把gbk编码转换为utf-8编码/** * gbk编码转utf-8 * @param unknown $data * @return multitype: */function gbk2utf8($data){ if(is_array($data)){ return array_map('gbk2utf8', $data); ...原创 2017-01-05 22:36:49 · 1130 阅读 · 0 评论 -
php 生成csv文件与解析csv文件
/** * 生成 csv格式文件 * @param unknown $arr * $arr=array( array('1','name1','22'), array('2','name2','23'), array('3','name3','24'), array('4','name4','25'),); * @param string $fi...原创 2017-01-05 13:11:55 · 488 阅读 · 0 评论 -
php 文字水印
<?php/*给图片加文字水印的方法*/$dst_path = 'http://f4.topitme.com/4/15/11/1166351597fe111154l.jpg';$dst = imagecreatefromstring(file_get_contents($dst_path));/*imagecreatefromstring()--从字符串中的图像流新建一个图像...原创 2017-01-05 00:17:19 · 342 阅读 · 0 评论 -
php 图像水印
//原始图像路径$filename="upload/1.jpeg";//水印图像的路径$watername="upload/cut.jpeg";//获取原始图像的大小list($s_width,$s_height)=getimagesize($filename);//获取水印图像的大小list($w_width,$w_height)=getimagesize($waterna...原创 2017-01-05 00:11:09 · 224 阅读 · 0 评论 -
php 裁剪图像
//图片路径$filename="upload/1.jpeg";//裁剪宽度$width=120;//裁剪高度$height=120;//裁剪的开始x轴位置$src_x=0;//裁剪的开始的y轴位置$src_y=0;//创建画布,保存裁剪后的图像$dst_image=imagecreatetruecolor($width, $height);//获取裁剪前的图像资源...原创 2017-01-04 23:19:33 · 249 阅读 · 0 评论 -
php uploadify上传文件
一、下载和使用下载地址:http://www.uploadify.com/download/文档地址:http://www.uploadify.com/documentation/下载后解压找到index.php文件,如下:<!DOCTYPE HTML><html><head><meta http-equiv="Con...原创 2017-01-17 23:13:07 · 2824 阅读 · 0 评论 -
PHP XAMPP下载地址
https://sourceforge.net/projects/xampp/files/翻译 2016-01-01 23:50:51 · 2986 阅读 · 1 评论 -
phpexcel 导出数据
<?php/** * 简单实用Execl */ set_include_path('.'.get_include_path().PATH_SEPARATOR.dirname(__FILE__).'/PHPExecl/');/* @func 引入类 */require 'PHPExcel.php'; //模拟数据$mulit_ar...原创 2015-11-04 17:34:53 · 286 阅读 · 0 评论 -
php_curl详解
CURLOPT_RETURNTRANSFER 选项:curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);如果成功只将结果返回,不自动输出任何内容。如果失败返回FALSEcurl_setopt($ch, CURLOPT_RETURNTRANSFER,0); 或着不使用这个选项:如果成功只返回TRUE,自动输出返回的内容。如果失败返回FALSE...转载 2015-04-19 11:05:05 · 301 阅读 · 0 评论 -
PHP socket采集实例
首先用到两个函数gethostbyname 获取主机的ip地址getprotobyname 返回取得协议编号php socket函数socket_accept() 接受一个Socket连接socket_bind() 把socket绑定在一个IP地址和端口上socket_clear_error() 清除socket的错误或者最后...转载 2015-04-16 15:53:23 · 410 阅读 · 0 评论 -
php中socket的使用
一、开启socketphpinfo();查看是否开启了socket扩展,否则在php.ini中开启。二、服务器端代码的写法<?phperror_reporting(E_ALL);set_time_limit(0);//ob_implicit_flush();$address = '127.0.0.1';$port = 10005;//创建端口if( ($sock...转载 2015-04-16 15:35:57 · 247 阅读 · 0 评论