摘要:一:curl$ch = curl_init();curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false);curl_setopt($ch,CURLOPT_TIMEOUT,$second);curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);curl_setopt($ch,CURLOPT_URL,$url);。。。$data = curl_exec($ch);curl_close($ch);二:fsockopen$fp = @fsockopen('www.belie8.com',80,$errno,$errstr,
阅读全文
摘要:BOM: Byte Order MarkUTF-8 BOM又叫UTF-8 签名,其实UTF-8 的BOM对UFT-8没有作用,是为了支援UTF-16,UTF-32才加上的BOM,BOM签名的意思就是告诉编辑器当前文件采用何种编码,方便编辑器识别,但是BOM虽然在编辑器中不显示,但是会产生输出,就像多了一个空行,如果您在修改任何PHP文件後发生:* 不能登入或者不能登出; * 页顶出现一条空白; * 页顶出现错误警告; * 其它不正常的情况。则多半是编辑器的问题。本程序采用UTF-8编码。现在几乎所有的文本编辑软件都可以显示并编辑UTF-8编码的文件。但是很遗憾,其中很多软件的表现并不理想。类似
阅读全文
摘要:哎,最近在国外,比较忙,都忘了自己还有个博客。前天遇到个问题 linux 下一直无法启动mysql service mysql start .提示无法找到pid 文件。service mysql stop ,也有提示是pid 无法找到,说明还有未结束的进程,ps auxf | grep mysql ,搜出关于mysql 的所有进程 ,然后用 kill -9 XXX结束之, 心想这回可以了,再次启动,start mysql..............一直这么显示着,漫长的等待,结果换来一个error。真够晕的。查看mysql的日志也没有个结果 。最后把日志删除了,再重启下,就ok了。猜想是...
阅读全文
摘要:对于一个被加载的页面,而遇到会卡的原因 ,代码量大,为了减少一句话分析,就采用分段式判断。从php手册了解到,使用microtime函数,具体方法可参见php手册对这函数的用法定义get_execution_time函数function get_execution_time(){ static $microtime_start = null; if($microtime_start === null) { $microtime_start = microtime(true); return 0.0; } return micr...
阅读全文
摘要:大部分php程序员在写程序时,经常会把配置里的E_NOTICE给关了。要不然会报很多的提示 大部分notice是提示变量未声明。我们往往让php自动创建变量,这也许方便了大部分程序员,可这也存在隐患。 eg.test.php if($admin==1){ entry }esle{ deny } 而我们访问test.php?admin=1就可以绕过进入了。 当然,以上也是要有条件的,需要在设置配置文件register_globals = On,默认都是关的 以下有关配置选项说明。 variables_order = “EGPCS” ; PHP注册 Environment, GET,...
阅读全文
摘要:今天帮朋友解密了个文件。原文<?php $OOO000000=urldecode('%66%67%36%73%62%65%68%70%72%61%34%63%6f%5f%74%6e%64');$OOO0000O0=$OOO000000{4}.$OOO000000{9}.$OOO000000{3}.$OOO000000{5};$OOO0000O0.=$OOO000000{2}.$OOO000000{10}.$OOO000000{13}.$OOO000000{16};$OOO0000O0.=$OOO0000O0{3}.$OOO000000{11}.$OOO000000{12}
阅读全文
摘要:<?php $domain=file('site.txt'); $counts=count($domain)-1; for ($i=0;$i<=$counts;$i++) { #echo $domain[$i]; echo gethostbyname("$domain[$i]"); }?>#echo gethostbyname('www.baidu.com'); 这样打印的是www.baidu.com的ip在群里的聊天记录中看到以上代码段,刚开始还真不知道这是什么问题,还以为会是网络延迟,当没有获取到ip的时候就显示回原样,
阅读全文
摘要:今天在改bug时,发现同事写的代码里存在跨站漏洞,于是加了个php防跨站函数htmlentities()。因为以前也没有认真分析过此函数,翻了下文档,想了解透测点。Htmlentities() 转化所有适当字符为html实体 函数说明:string htmlentities ( string $string [, int $flags = ENT_COMPAT [, string $charset [, bool $double_encode = true ]]] )string :为输入需转换的字符flags :和htmlspecialchars()一样,第二个参数允许你定义单双引号将做什么
阅读全文
摘要:1、ubuntu 下安装postfix,执行命令:# apt-get install postfix popa3d2、在php.ini配置文件上,设置mail函数:1)打开php.ini配置,下面是我的php.ini路径:# vi /home/service/web/config/php/lib/php.ini2)找到:sendmail_path ,将其设置为:sendmail_path = /usr/sbin/sendmail -t注意:这里需要先到/usr/sbin/ 目录中,确认是否存在sendmail文件。3、启动postfix:# /etc/init.d/postfix start4
阅读全文
摘要:可以先把整个页面其它的信息先全部显示出来 然后具体的数据部分可以使用jquery ajax的getJSON()方法定义和用法通过 HTTP GET 请求载入 JSON 数据。在 jQuery 1.2 中,您可以通过使用 JSONP 形式的回调函数来加载其他网域的 JSON 数据,如 "myurl?callback=?"。jQuery 将自动替换 ? 为正确的函数名,以执行回调函数。 注意:此行以后的代码将在这个回调函数执行前执行。语法jQuery.getJSON(url,data,success(data,status,xhr))实例: top.php页面 <li&g
阅读全文
摘要:在应用$mysqli时,因没常用到数据回滚,老忘,整理下,做个记录。$mysqli->autocommit(FALSE);//自动提交设置关闭$mysqli->query("BEGIN");//事务开始,接着下面的执行才可以我们自己控制try{$mysqli->query($sql);$q1=$mysqli->affected_rows;if($q == 1){ //从返回的数据库影响行数做判断,是否返回正常$mysqli->commit();//事务提交}else{$mysqli->rollback();//错误回滚 //执行$sql语
阅读全文
摘要:碰到此问题,做下记录获取系统类型及版本号:php_uname()(例:WindowsNTCOMPUTER5.1build2600)只获取系统类型:php_uname('s')(或:PHP_OS,例:WindowsNT)只获取系统版本号:php_uname('r')(例:5.1)获取PHP运行方式:php_sapi_name()(PHPrunmode:apache2handler)获取前进程用户名:Get_Current_User()获取PHP版本:PHP_VERSION获取Zend版本:Zend_Version()获取PHP安装路径:DEFAULT_INCLUD
阅读全文
摘要:原理很简单,以后看着0day的时候都试着批量下吧,省事。。。。<?php $keyword='Powered by JishiGou' ; // 批量关键字$timeout = 40;$stratpage =1; //启始页$lastpage = 10000;//终止页for ($i=$stratpage ; $i<=$lastpage ; $i++ ){$array=ReadBaiduList($keyword,$timeout,$i);//百度搜索到的url保存到array数据foreach ($array as $key=>$url ){//对数据遍历,
阅读全文
摘要:代码:include_once("../class/xmlPost.php");//自己封装的xmlPost类$mothed = 'registration';$xml = new xmlPost();$array = array('user'=>'fda',...);//要封装的xml$poststring = $xml->xmlCreate($array,$mothed);//生成xml的字串printf($poststring);//打印出来看看。。。。。(问题就在这了)$response = $xml-&g
阅读全文
摘要:无意中翻了翻旧日的代码,原来在上一次交易签名无效的问题仅仅是出现在一个调用的问题上,merchantProperties.php被调用了两次,当第一次被调用的时候是正确加载的,而在第二次调用的时候出就会出现参数丢失的现象,正因为这样加上session或其它全局方式则不会出现此问题,而不是编码问题。 yeepayCommon.php <?phpinclude 'merchantProperties.php';/** @Description 易宝支付产品通用接口范例 * @V3.0* @Author rui.xin*/#产品通用接口正式请求地址$reqURL_onLine
阅读全文
摘要:索引不是越建越多好,索引多了,反而会托慢数据。在数据表类型为MYISAM时使用索引,MYSIAM不支持多事务。而INNODB支持。 需要建立索引的字段通常是在where,order by语句后。 语句的效率分析上最好用explain执行后看看效果。建个userlogin表CREATE TABLE IF NOT EXISTS `userlogin` ( `id` int(8) NOT NULL AUTO_INCREMENT, `login_id` varchar(50) DEFAULT NULL, `uid` int(11) DEFAULT NULL, `login_time` int(...
阅读全文
摘要:今天在易宝支付问题上给纠结了半天,将模块加进文件中,设置好商户ID与密钥,加上对应的域名,是可以实现在线支付问题。但我现在要的功能是要按不同的分组,去读取不同的商户ID与密钥,因些,我将这些存到数据库中去。在reg.php页面中就开始从数据中读取相应会员组的商户编号与密钥。读取出来的值再传送给merchantProperties.php,采用session方式传送。奇怪的问题出现了,出现了莫名的错误“交易签名无效”,打印了一下编号与密钥,发现没有错呀。于是找了客服问了,说是编码的问题,易宝只支付GBK编码。马上检查了下,发现编码还真有问题,因为我存数据库的编码是utf-8,于是用iconv..
阅读全文
摘要:在对mysql数据库拷贝时,以前的习惯要么就导出.sql文件。要么就直接把date下某个数据库文件直接复制,粘贴。后者更方便,快捷。 可今天碰到了一个问题,在我把数据库拷到其它机子过去,发现,数据库怎么少了,但是,数据表的数据显示还是对的。马上去查看一下拷贝的数据库文件,发现里面的文件有些不对静,能够显示出来的表*.frm,*.MYD等都有,而没有显示出来的没有。难怪拷给别人的会问题,那么,那些没有显示出来的表又在哪呢?应该跟数据表的类型有点关系。赶紧去数据查看了下数据表的类型,果真如此,即,那些不显出来的是InnoDB的类型,网上资源搜一下,才知道,原来那些数据是在ibdata1的...
阅读全文
摘要:<?php$ralphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890";$alphabet = $ralphabet . $ralphabet;class Crypto {/*函数作用:解密*/public function encrypt ($strtoencrypt) {$password = "XXXXXX";global $ralphabet;global $alphabet;for( $i=0; $i<strlen($password);
阅读全文