PHP: file_get_contents 没有给我预期的输出:(

PHP: file_get_contents not giving me output I expect :(

这是我非常简单的代码:

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 文件位于同一目录中。

可能已登录,但不是正在访问"remote"文件;你的服务器是。并且您的服务器未登录。

与其使用 file_get_contents,不如考虑使用 cURL(尽管我个人会全力以赴发送手动 HTTP 请求!)并在 headers 中传递 "Cookie: ".session_name()."=".session_id();。这实际上将使服务器劫持您自己的 session 以保留您提供的身份验证。

even though I am logged in.

我不确定你是不是真的。

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

两个可能有用的例子:

Using Authentication And file_get_contents()

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