php實現(xiàn)跨域提交form表單的方法【2種方法】
本文實例講述了php實現(xiàn)跨域提交form表單的方法。分享給大家供大家參考,具體如下:
有時我們?yōu)榱司W(wǎng)站安全考慮,我們不允許直接跨域提交form表單數(shù)據(jù),如果我們自己有這個需求呢?下面我們來介紹兩種跨域的方法解決直接跨域問題。
下面我們來看看兩種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來抓,郵箱的通訊錄,不過現(xiàn)在已經(jīng)不可以了。哈哈。
二、利用jquery form,ajax提交
1. 下載jquery.form.js
2. js代碼
$('#testform').submit(function() {
$(this).ajaxSubmit({
type: 'post', // 提交方式 get/post
dataType:"json",//數(shù)據(jù)類型
url: 'your url', // 需要提交的 url
success: function(data) { // data 保存提交后返回的數(shù)據(jù),一般為 json 數(shù)據(jù)
// 此處可對 data 作相關(guān)處理
alert('提交成功!');
}
$(this).resetForm(); // 提交后重置表單
});
return false; // 阻止表單自動提交事件
});
3. php代碼
header("Access-Control-Allow-Origin:*"); //跨域權(quán)限設(shè)置,允許所有
header("Access-Control-Allow-Origin:http://www.test.com"); //只允許test.com跨域提交數(shù)據(jù)
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php程序設(shè)計安全教程》、《php安全過濾技巧總結(jié)》、《PHP運算與運算符用法總結(jié)》、《PHP網(wǎng)絡(luò)編程技巧總結(jié)》、《PHP基本語法入門教程》、《php操作office文檔技巧總結(jié)(包括word,excel,access,ppt)》、《php面向?qū)ο蟪绦蛟O(shè)計入門教程》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家PHP程序設(shè)計有所幫助。
相關(guān)文章
PHP常見數(shù)學(xué)函數(shù)及BC高精度數(shù)學(xué)函數(shù)用法示例
這篇文章主要介紹了PHP常見數(shù)學(xué)函數(shù)及BC高精度數(shù)學(xué)函數(shù)用法,簡單列舉了php常見數(shù)學(xué)運算函數(shù)并結(jié)合實例形式給出了bc高精度函數(shù)的功能與使用技巧,需要的朋友可以參考下2017-11-11
PHP中使用glob函數(shù)實現(xiàn)一句話刪除某個目錄下的所有文件
這篇文章主要介紹了PHP中使用glob函數(shù)實現(xiàn)一句話刪除某個目錄下的所有文件,重點在glob函數(shù)的使用上,需要的朋友可以參考下2014-07-07
PHP下操作Linux消息隊列完成進(jìn)程間通信的方法
當(dāng)我們開發(fā)的系統(tǒng)需要使用多進(jìn)程方式運行時,進(jìn)程間通信便成了至關(guān)重要的環(huán)節(jié)。消息隊列(message queue)是Linux系統(tǒng)進(jìn)程間通信的一種方式。2010-07-07

