2009-10-08 86 views

回答

1

這可能在純PHP做的唯一方法是通過使用捲曲並打印在頁面請求的結果:

<?php 

// sort post data 
$postarray = array(); 
foreach ($_GET as $getvar => $getval){ 
    $postarray[] = $getvar.'='.urlencode($getval); 
    } 
$poststring = implode('&',$postarray); 

// fetch url 
$curl = curl_init("http://www.yourdomain.com/yourpage.php"); 
curl_setopt($ch,CURLOPT_POST,count($postarray)); 
curl_setopt($ch,CURLOPT_POSTFIELDS,$poststring); 
$data = curl_exec($curl); 
curl_close($curl); 

// print data 
print $data; 

?> 

顯然您發佈之前,你會驗證獲取數據。 如果還有其他方法可以做到這一點,我會很有興趣知道這種方法並不理想。首先,必須在PHP中啓用cURL,其次,在請求另一個URL時會有一些開銷。

+0

非常感謝我會嘗試你的代碼,因爲目前我正在將數據放入第一頁的cookie中,並從第二頁中讀取數據,但這隻適用於同一個域中的頁面。 – Andrei 2009-10-08 12:03:27

+0

'$ _SERVER ['QUERY_STRING']'是一個帶查詢字符串的預合成字符串,因此您不需要構建'$ poststring'。 – 2010-10-04 01:12:11

1

只能使用form和javascript,這不是防彈的。

+0

這不能使用CURL PHP嗎? – Andrei 2009-10-08 08:30:59

+1

這不會是一個重定向。是的,我認爲你可以用'curl'手動調出並返回結果。 – 2009-10-08 08:59:50

+0

它不需要重定向,我只需要使用POST將GET變量發送到頁面。你也知道如何使這個不受歡迎的捲曲。 – Andrei 2009-10-08 09:06:07

相關問題