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

 更新时间:2016年10月17日 11:44:03   作者:edit02_lz  
这篇文章主要介绍了php实现跨域提交form表单的方法,结合实例形式分析了curl及ajax两种方法进行跨域提交的操作技巧,需要的朋友可以参考下

本文实例讲述了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安全过滤技巧总结》、《PHP运算与运算符用法总结》、《PHP网络编程技巧总结》、《PHP基本语法入门教程》、《php操作office文档技巧总结(包括word,excel,access,ppt)》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总

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

相关文章

  • PHP生成图像验证码的方法小结(2种方法)

    PHP生成图像验证码的方法小结(2种方法)

    这篇文章主要介绍了PHP生成图像验证码的方法,结合实例形式分析了加法运算验证码与字符验证码2种方法供大家参考借鉴,需要的朋友可以参考下
    2016-07-07
  • 解析PHP中数组元素升序、降序以及重新排序的函数

    解析PHP中数组元素升序、降序以及重新排序的函数

    本篇文章是对PHP中数组元素升序、降序以及重新排序的函数进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • PHP实现的策略模式示例

    PHP实现的策略模式示例

    这篇文章主要介绍了PHP实现的策略模式,简单介绍了策略模式的概念、原理并结合实例形式分析了php策略模式的相关实现与使用技巧,需要的朋友可以参考下
    2019-03-03
  • PHP 模拟$_PUT实现代码

    PHP 模拟$_PUT实现代码

    PHP里有$_GET,$_POST,但是没有$_PUT,所以如果需要使用它的话,则你不得不自己模拟一下
    2010-03-03
  • php 生成饼图 三维饼图

    php 生成饼图 三维饼图

    php 生成饼图 三维饼图实现代码,大家可以测试下。
    2009-09-09
  • PHP实现通过strace定位故障原因的方法

    PHP实现通过strace定位故障原因的方法

    这篇文章主要介绍了PHP实现通过strace定位故障原因的方法,结合实例形式分析了出现高负载情况下使用strace定位故障原因的相关命令与操作技巧,需要的朋友可以参考下
    2018-04-04
  • 关于PHP实现异步操作的研究

    关于PHP实现异步操作的研究

    一般来说PHP适用的场合是web页面展示等耗时比较短的任务,如果对于比较花时间的操作如resize图片、大数据导入、批量发送EDM、SMS等,就很容易出现操作超时情况
    2013-02-02
  • php创建图像具体步骤

    php创建图像具体步骤

    本文主要介绍了php创建图像的具体步骤。具有很好的参考价值。下面跟着小编一起来看下吧
    2017-03-03
  • PHP实践教程之过滤、验证、转义与密码详解

    PHP实践教程之过滤、验证、转义与密码详解

    我们在开发应用时,一般有个约定:不要信任任何来自不受自己控制的数据源中的数据。所以这个时候就用到了这篇文章介绍的内容,本文主要给大家介绍了关于PHP实践教程之过滤、验证、转义与密码的相关资料,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-07-07
  • PHP中__FILE__、dirname与basename用法实例分析

    PHP中__FILE__、dirname与basename用法实例分析

    这篇文章主要介绍了PHP中__FILE__、dirname与basename用法,以实例形式较为详细的分析了__FILE__、dirname与basename的具体用法,并测试对比了WordPress中自带的函数,需要的朋友可以参考下
    2014-12-12

最新评论