我需要向另一个名为global.php
的文件发送POST请求,为此我尝试以下代码:
$url = 'global.php';
$data = array('stack' => 'overflow');
$options = array(
'http' => array(
'header' => "Content-type: application/x-www-form-urlencoded\r\n",
'method' => 'POST',
'content' => http_build_query($data)
)
);
$context = stream_context_create($options);
$result = file_get_contents($url, false, $context);
var_dump($result);
这是应处理请求的global.php
文件:
if(isset($_POST['stack'])){
echo 'exists';
}else{
echo 'error';
}
问题是,而不是命令var_dump ($ result);
显示存在,它显示PHP代码?我该如何解决这个问题?
为什么当我尝试使用ajax
做同样的事情时,它会返回存在而不是PHP代码的文本?
答案 0 :(得分:2)
你应该使用完整的URL,通过服务器处理php文件。
$url = 'http://YOURURL.com/global.php';
AJAX调用是从浏览器调用到绝对URL,这就是为什么你得到了理想的响应。