2009-10-08 6 views

답변

1

유일한 방법은 페이지에서 해당 요청의 결과를 컬을 사용하여 인쇄하는 것입니다 : 당신이 그것을 게시하기 전에

<?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; 

?> 

은 분명히 당신이 GET 데이터의 유효성을 검사 것입니다. 다른 방법으로이 작업을 수행 할 수 있다면이 방법이 이상적이지 않기 때문에 관심이 있습니다. 첫째, PHP에서 cURL을 활성화해야하며 두 번째로 다른 URL을 요청할 때 약간의 오버 헤드가 발생합니다.

+0

고맙습니다. 코드를 사용해 보겠습니다. 첫 페이지의 쿠키에 데이터를 넣고 두 번째 페이지의 데이터를 읽지 만, 동일한 도메인의 페이지에서만 작동합니다. – Andrei

+0

'$ _SERVER [ 'QUERY_STRING']'는 쿼리 문자열이있는 미리 조합 된 문자열이므로'$ poststring'을 구성 할 필요가 없습니다. –

1

양식 및 자바 스크립트 만 사용하므로 방탄하지 않습니다. 이 순수 PHP에서 할 수

+0

CURL을 사용하여 PHP로 만들 수 없습니까? – Andrei

+1

리디렉션이 아닙니다. 네, 수동으로 '컬 (curl)'이라고 불러서 결과를 돌려 줄 수 있다고 생각합니다. –

+0

글쎄 그것은 리다이렉트 일 필요는 없다. POST를 사용하여 페이지에 GET varaibles를 보내면된다. 또한이 unsing 컬을 만드는 방법을 알고 계십니까. – Andrei

관련 문제