寒窗轩,寒川的个人网络博客,记录互联网事,学习网络编程、分享工作经验、人生感悟,包括但不限于程序代码、数据库、Office办公、随笔等内容。

php用fsockopen()函数实现模拟提交表单。

一直想解决EMlog飞信插件发表留言后漫长等待返回发送结果的困扰,今天用fsockopen()函数解决了这个问题。原理很简单,就是php模拟post表单,且去掉返回结果。这样速度就快多了。核心代码如下:

<?php


$msg='测试飞信用';
$host =$_SERVER['HTTP_HOST'];
$post=rawurlencode('msg').'='.rawurlencode($msg);
$len = strlen($post);

 $file ="/fetion/api.php";
$fp = @fsockopen( $host , 80, $errno, $errstr, 30);
if (!$fp)
{
echo "$errstr ($errno)\n";
}
else
{
$out = "POST $file HTTP/1.1\r\n";
$out .= "Host: $host\r\n";
$out .= "Content-type: application/x-www-form-urlencoded\r\n";
$out .= "Connection: Close\r\n";
$out .= "Content-Length: $len\r\n";
$out .="\r\n";
$out .= $post."\r\n";
fwrite($fp, $out);
fclose($fp);
}

?>

文章写得不错?我是土豪我要在线打赏!
在线打赏

昵称:

验证码:验证码

评论:

文章分类
系统
程序
数据
Office
随笔
热门文章
VB.net开发的word转pdf的小工具
文章推荐
免责声明
关于博主
开篇第一章
随机推荐
happy birthday to myself
php获取来自搜索引擎入站的关键词
mysql insert插入语句性能优化
phpword中文字符乱码终极解决方案
帮朋友诚聘php程序员
Excel文件内容很少,但文件很大,打开很慢怎么办?
计算php代码执行时间
本博客的发展方向
删除MySQL数据库中二进制日志的3种方法
php判断远程文件是否存在
友情连接
春燕网络
谢润的博客
企安文库