php实现跨域提交form表单的方法【2种方法】


Posted in PHP onOctober 17, 2016

本文实例讲述了php实现跨域提交form表单的方法。分享给大家供大家参考,具体如下:

有时我们为了网站安全考虑,我们不允许直接跨域提交form表单数据,如果我们自己有这个需求呢?下面我们来介绍两种跨域的方法解决直接跨域问题。

下面我们来看看两种php跨域提交form的方法

一、通过php curl

function curlPost($url,$params)
{
   $postData = '';
   foreach($params as $k => $v)
   {
     $postData .= $k . '='.$v.'&';
   }
   rtrim($postData, '&');
   $ch = curl_init();
   curl_setopt($ch,CURLOPT_URL,$url);
   curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
   curl_setopt($ch,CURLOPT_HEADER, false);
   curl_setopt($ch, CURLOPT_POST, count($postData));
   curl_setopt($ch, CURLOPT_POSTFIELDS, $postData);
   $output=curl_exec($ch);
   curl_close($ch);
   return $output;
}
echo curlPost("http://test.com",array('name'=>"tank"));

以前很多人用curl来抓,邮箱的通讯录,不过现在已经不可以了。哈哈。

二、利用jquery form,ajax提交

1. 下载jquery.form.js

2. js代码

$('#testform').submit(function() {
   $(this).ajaxSubmit({
   type: 'post', // 提交方式 get/post
   dataType:"json",//数据类型
   url: 'your url', // 需要提交的 url
   success: function(data) { // data 保存提交后返回的数据,一般为 json 数据
   // 此处可对 data 作相关处理
   alert('提交成功!');
   }
   $(this).resetForm(); // 提交后重置表单
   });
   return false; // 阻止表单自动提交事件
});

3. php代码

header("Access-Control-Allow-Origin:*"); //跨域权限设置,允许所有
header("Access-Control-Allow-Origin:http://www.test.com"); //只允许test.com跨域提交数据

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
在PHP中利用XML技术构造远程服务(上)
Oct 09 PHP
人大复印资料处理程序_输入篇
Oct 09 PHP
PHP 面向对象 PHP5 中的常量
May 05 PHP
用php解析html的实现代码
Aug 08 PHP
PHP中strtotime函数使用方法分享
Jan 10 PHP
php xml常用函数的集合(比较详细)
Jun 06 PHP
探讨:php中在foreach中使用foreach ($arr as &$value) 这种类型的解释
Jun 24 PHP
浅谈php数组array_change_key_case() 函数和array_chunk()函数
Oct 22 PHP
PHP实现截取中文字符串不出现?号的解决方法
Dec 29 PHP
PHP实现的简单组词算法示例
Apr 10 PHP
PHP精确到毫秒秒杀倒计时实例详解
Mar 14 PHP
对laravel的csrf 防御机制详解,及form中csrf_token()的存在介绍
Oct 24 PHP
php性能分析之php-fpm慢执行日志slow log用法浅析
Oct 17 #PHP
详解PHP原生DOM对象操作XML的方法
Oct 17 #PHP
php排序算法实例分析
Oct 17 #PHP
基于thinkPHP框架实现留言板的方法
Oct 17 #PHP
php并发加锁示例
Oct 17 #PHP
thinkPHP自动验证、自动添加及表单错误问题分析
Oct 17 #PHP
PHP CURL post数据报错 failed creating formpost data
Oct 16 #PHP
You might like
PHP导出Excel实例讲解
2016/01/24 PHP
php微信公众平台示例代码分析(二)
2016/12/06 PHP
jQuery选择器中含有空格的使用示例及注意事项
2013/08/25 Javascript
iframe窗口高度自适应的又一个巧妙实现思路
2014/04/04 Javascript
jQuery1.9.1针对checkbox的调整方法(prop)
2014/05/01 Javascript
js获得当前系统日期时间的方法
2015/05/06 Javascript
JavaScript表单验证开发
2016/11/23 Javascript
JS按钮闪烁功能的实现代码
2017/07/21 Javascript
Koa2微信公众号开发之消息管理
2018/05/16 Javascript
解决vue路由后界面没有变化,但是链接有的问题
2018/09/01 Javascript
解析JS在获取当前月的最后一天遇到的坑
2019/08/30 Javascript
vue仿淘宝滑动验证码功能(样式模仿)
2019/12/10 Javascript
JavaScript如何判断对象有某属性
2020/07/03 Javascript
小程序实现tab标签页
2020/11/16 Javascript
[00:32]2018DOTA2亚洲邀请赛Secret出场
2018/04/03 DOTA
用实例说明python的*args和**kwargs用法
2013/11/01 Python
python中日期和时间格式化输出的方法小结
2015/03/19 Python
Python max内置函数详细介绍
2016/11/17 Python
python多进程控制学习小结
2018/10/31 Python
利用pyuic5将ui文件转换为py文件的方法
2019/06/19 Python
pyQt5实时刷新界面的示例
2019/06/25 Python
Python 实现毫秒级淘宝抢购脚本的示例代码
2019/09/16 Python
Python实现数值积分方式
2019/11/20 Python
py-charm延长试用期限实例
2019/12/22 Python
python字典setdefault方法和get方法使用实例
2019/12/25 Python
OpenCV 表盘指针自动读数的示例代码
2020/04/10 Python
HTML5通用接口详解
2016/06/12 HTML / CSS
美国杂志订阅折扣与优惠网站:Magazines.com
2016/08/31 全球购物
优秀导游先进事迹材料
2014/01/25 职场文书
时尚休闲吧创业计划书
2014/01/25 职场文书
2014年法务工作总结
2014/12/11 职场文书
2014年基建工作总结
2014/12/12 职场文书
骨干教师申报材料
2014/12/17 职场文书
大学毕业生个人总结
2015/02/28 职场文书
python 定义函数 返回值只取其中一个的实现
2021/05/21 Python
nginx实现动静分离的方法示例
2021/11/07 Servers