2015-01-17 111 views
0

我有問題,並沒有明確回答我。

是否可以將$ _POST數據從domain2.com發送到domain1.com?

實施例:

腳本上domain2.com

<form method="post" action="http://domain2.com"> 
<input type="hidden" name="data" value="1" /> 
<input type="submit" value="send" /> 
</form> 

腳本上domain1.com

<?php var_dump($_POST); ?> 

的domain2.com爲domain1的別名.com和所有腳本和數據都在domain1.com上。 我有問題趕上$ _POST數據。

任何信息或鏈接幫助我,感謝所有。

+0

您可以用PHP捲曲做到這一點,例如 - http://stackoverflow.com/questions/2138527/php-curl-http -post-sample-code –

+1

http://stackoverflow.com/questions/298745/how-do-i-send-a-cross-domain-post-request-via-javascript – Jamie

回答

1
<form method="post" action=""> 
<input type="hidden" name="data" value="1" /> 
<input type="submit" value="send" /> 
</form> 

//提取數據($ _POST);

//set POST variables 
$url = 'http://domain2.com/get-post.php'; 
$fields = array(
         'data' => urlencode($data), 

       ); 

//url-ify the data for the POST 
foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; } 
rtrim($fields_string, '&'); 
//open connection 
$ch = curl_init(); 

//set the url, number of POST vars, POST data 
curl_setopt($ch,CURLOPT_URL, $url); 
curl_setopt($ch,CURLOPT_POST, count($fields)); 
curl_setopt($ch,CURLOPT_POSTFIELDS, $fields_string); 

//execute post 
$result = curl_exec($ch); 

//close connection 
curl_close($ch); 

使用此代碼我使用捲曲發送POST數據域2

+1

我認爲這是最好的解決方案,但我更容易。重定向到基本域。不漂亮,但有效。在安全情況下:CSRF,令牌 – Maximi

1

是的,它是可能的,要做到這一點,你應該在接收域的你的PHP文件的頂部添加此:從崗位 提取

header("access-control-allow-origin: *"); 
+0

我試了一下,謝謝先生。 – Maximi

+0

這個工作只對我用JavaScript。 – Maximi