현재 서버에서 테스트를 실행할 프로그램이 있으며 테스트 결과가 test.php 파일로 전송됩니다. 내 POST 데이터를 reports.php 페이지로 리디렉션하려고하는데이 데이터는 JSON 형식이므로보고 할 데이터를 pages.php에 멋지게 표시하고 싶습니다 (결국). 지금 당장은 POST의 결과를 내 reports.php에 에코하여 문제를 해결하고 즉석에서 해결할 수 있습니다. 어떻게해야합니까? 현재 report.php를 열면 빈 페이지가 나타납니다. 이것은 내 test.php 파일에있는 것입니다.표시 할 다른 페이지로 POST JSON 데이터 리디렉션
test.php
#!/usr/bin/php
<?php
// turn on error reporting
error_reporting(E_ALL);
ini_set('display_errors', 'On');
//URL to POST JSON data to
$url = "http://my/dir/to/reports.php";
$post_data = array(
'id' => $argv[1],
'version' => $argv[2],
'server' => $argv[3],
'status' => $argv[4],
'test' => $argv[5],
'time' => $argv[6],
'body' => $argv[7],
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch, CURLOPT_VERBOSE, TRUE);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
$result = curl_exec($ch);
if (curl_error($ch)) {
echo 'Curl error: ' . curl_error($ch);
} else {
echo "success: \n\n";
print_r($result);
}
curl_close($ch);
?>
reports.php
<?php //reports.php
//This php file is to receive the POST data coming from php files.
if ($_SERVER['REQUEST_METHOD'] == 'POST'){
$token = $_POST['result'];
echo print_r($token);
}
?>
와우 매우 유용합니다 !! 자세한 답변을 주셔서 대단히 감사드립니다. 몇 번에 걸쳐 그것을 읽게하고 병이 있으면 질문을합니다. 다시 한 번 감사드립니다! – kkmoslehpour
요청 빈에 대해 올바르게 수행하고 있는지 확인하기 위해'test.php '에'$ url'을 요청 bin의 URL에 설정하고 그것을'reports.php'에서 검색합니까? '$ result = file_get_contents ('https://requestb.in/1i8lmm81'); ' 'echo $ result;'? 나는 이것을 시도했지만 reports.php는 여전히 공백이다. 그러나 새로 고친 후 요청 빈 페이지에 게시 데이터가 표시됩니다. – kkmoslehpour
reports.php를 변경할 필요가 없습니다. 브라우저에서 요청 bin을 검사 한 후 새로 고침하고 그런 식으로 디버깅하면됩니다. 일단 기대했던대로 작동하게되면 reports.php를 다시 가리키게됩니다. – miknik