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 ci框架验证码实例分析
Jun 26 PHP
php判断ip黑名单程序代码实例
Feb 24 PHP
又一个PHP实现的冒泡排序算法分享
Aug 21 PHP
PHP实现搜索相似图片
Sep 22 PHP
PHP文件缓存类实现代码
Oct 26 PHP
Yii控制器中filter过滤器用法分析
Jul 15 PHP
CI框架常用经典操作类总结(路由,伪静态,分页,session,验证码等)
Nov 21 PHP
php中namespace及use用法分析
Dec 06 PHP
PHP获取真实客户端的真实IP
Mar 07 PHP
PHP+AjaxForm异步带进度条上传文件实例代码
Aug 14 PHP
php根据地址获取百度地图经纬度的实例方法
Sep 03 PHP
yii框架结合charjs实现统计30天数据的方法
Apr 04 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
人大复印资料处理程序_查询篇
2006/10/09 PHP
PHP获取MSN好友列表类的实现代码
2013/06/23 PHP
支持生僻字且自动识别utf-8编码的php汉字转拼音类
2014/06/27 PHP
PHP更安全的密码加密机制Bcrypt详解
2017/06/18 PHP
JQuery获取浏览器窗口内容部分高度的代码
2012/02/24 Javascript
js函数的延迟加载实现代码
2012/10/11 Javascript
setTimeout函数兼容各主流浏览器运行执行效果实例
2013/06/13 Javascript
javascript 处理null及null值示例
2014/06/09 Javascript
js结合正则实现国内手机号段校验
2015/06/19 Javascript
jquery获得当前html页面源码的方法
2015/07/14 Javascript
GitHub上一些实用的JavaScript的文件压缩解压缩库推荐
2016/03/13 Javascript
JS遍历页面所有对象属性及实现方法
2016/08/01 Javascript
JavaScript中定时控制Throttle、Debounce和Immediate详解
2016/11/17 Javascript
微信小程序去哪里找 小程序到底如何使用(附小程序名单)
2017/01/09 Javascript
Angular使用 ng-img-max 调整浏览器中的图片的示例代码
2017/08/17 Javascript
EasyUI的DataGrid每行数据添加操作按钮的实现代码
2017/08/22 Javascript
使用Angular CLI快速创建Angular项目的一些基本概念和写法小结
2018/04/22 Javascript
Vue.js实现的表格增加删除demo示例
2018/05/22 Javascript
JavaScript引用类型Function实例详解
2018/08/09 Javascript
nodejs搭建本地服务器并访问文件操作示例
2019/05/11 NodeJs
d3.js实现图形缩放平移
2019/12/19 Javascript
Vue简单实现原理详解
2020/05/07 Javascript
js实现简单扫雷
2020/11/27 Javascript
利用Python脚本生成sitemap.xml的实现方法
2017/01/31 Python
如何在mac环境中用python处理protobuf
2019/12/25 Python
安装多个版本的TensorFlow的方法步骤
2020/04/21 Python
Python3爬虫带上cookie的实例代码
2020/07/28 Python
Python APScheduler执行使用方法详解
2020/12/10 Python
家长寄语大全
2014/04/02 职场文书
2014年民政局关于保密工作整改措施
2014/09/19 职场文书
机关职员工作检讨书
2014/10/23 职场文书
普通党员群众路线教育实践活动心得体会
2014/11/04 职场文书
公司行政助理岗位职责
2015/04/11 职场文书
消夏晚会主持词
2015/06/30 职场文书
CSS3新特性详解(五):多列columns column-count和flex布局
2021/04/30 HTML / CSS
教你用python实现12306余票查询
2021/06/30 Python