我有一个php页面,比如A,我在其中调用另一个页面,B不在同一台服务器上,使用标题功能&在URL中传递一些参数。我希望从B中将一些信息返回给A.如何管理?要返回的信息可以是文件或大型数组的内容。
说,我用这个 -
header('location:B.php?getx=23');
现在,我需要从B向A发送一些信息。如何从B发送信息?以及如何在A处收到相同的内容?从B发送的信息是敏感的&无法在网址中进行编码。
答案 0 :(得分:1)
页面a.php:
header('Content-Type: text/html');// this page will send content to the web browser as html webpage
$json_string = file_get_contents('http://example.com/b.php?param=param¶m2=param2');// this is a call to the page b.php with parameters
// now, $json_string -- received from b.php data
$json = json_decode($json_string); // after decoding, $json_string converts to arrays
... // there you can do anything else
echo("<html>..."); // like send page to web browser
页面b.php:
header('Content-Type: application/json'); // will return json to a.php
// anything you need to prepare the data to send back
.... // JSON for php -- array variables
echo(json_encode(Array(...))); // now we sending the json string to a.php
die;
答案 1 :(得分:0)
我认为你可以像这样工作,
Page A通过网址发送数据
页面B接收参数并处理数据。
页面B返回数据(基于您的要求的Json,Xml或纯HTML)
页面A可以从请求的URL解析此数据。
希望它能给出一些想法..
答案 2 :(得分:0)
您可以使用post方法将数据发送到其他服务器
<?php
$url='http://localhost/e/admin/test.html'
$data = array ('foo' => 'bar');
function mPost($url,$data)
{
$data = http_build_query($data);
$opts = array (
'http' => array (
'method' => 'POST',
'header'=> "Content-type: application/x-www-form-urlencoded\r\n" .
"Content-Length: " . strlen($data) . "\r\n",
'content' => $data
)
);
$context = stream_context_create($opts);
$html = file_get_contents($url, false, $context);
return $html;
}
?>