PHP:file_get_contents没有给我输出我期望:(

时间:2015-03-26 15:54:05

标签: php file-get-contents

这是我非常简单的代码:

session_name("miz");
session_start();
include_once 'codeFragments/sessions.php';

if(!isset($_SESSION['user']))
{
    header('Location: login.php?e=1');
    exit;
}

//include('simple_html_dom.php');

$homepage = file_get_contents('http://localhost:8888/Ryan/Mart/1/cPanel.php?p=create_member');


echo $homepage;exit;

问题是,即使我已登录,我总是获取login.php页面的内容而不是获取cPanel.php的内容。

当我尝试这个时:     $homepage = file_get_contents('cPanel.php?p=create_member');

它说:无法打开流:没有这样的文件或目录

我到底做错了什么?我已仔细检查过,此文件与cPanel.php文件位于同一目录中。

2 个答案:

答案 0 :(得分:3)

可能已登录,但未访问“远程”文件;你的服务器是。并且您的服务器尚未登录。

不要使用file_get_contents,而是考虑使用cURL(虽然我个人会全力以赴并发送手动HTTP请求!)并在标题中传递"Cookie: ".session_name()."=".session_id();。这实际上会使服务器劫持您自己的会话以保持您提供的身份验证。

答案 1 :(得分:0)

  

即使我已登录。

我不确定你是不是真的。

但是可以通过PHP处理真正的登录。之后,您应该能够访问正确的数据。

两个可能有用的示例:

Using Authentication And file_get_contents()

file_get_contents from url that is only accessible after log-in to website