我的主机名是
HEAD里面我有
<?php include("http://gvidas.lhosting.info/includes/header.php"); ?>
该文件的物理位置位于/htdocs/includes/header.php
为什么不起作用?我应该使用相对路径吗?
index.php的片段
根/ htdocs中/ index.php的:
<!DOCTYPE HTML>
<HTML>
<HEAD>
<?php include("includes/header.php"); ?>
<?php if (isset($_SESSION["admin_id"])) { redirect("managePage.php"); } ?>
<?php $permision = "public"; ?>
</HEAD>
<BODY>
<...>
</BODY>
</HTML>
header.php的片段
根/ htdocs中/包括/ header.php文件:
<?php require_once ("../includes/session.php"); ?>
<?php require_once ("../includes/functions.php"); ?>
<?php $db = mysqli_connect('http://gvidas.lhosting.info/', 'user', 'pass', 'beta');
if(mysqli_connect_errno()) { die("Database connection failed: " .
mysqli_connect_error() . " (" . mysqli_connect_errno() . ")");
}
?>
我现在认为我应该使用
<?php require_once ("session.php"); ?>
代替
<?php require_once ("../includes/session.php"); ?>
有什么想法吗?
答案 0 :(得分:3)
您应该使用物理位置而不是URI。
<?php include("/htdocs/includes/header.php"); ?>
答案 1 :(得分:3)
大多数实时服务器不允许绝对包含。您可以按如下方式更新代码:
<?php include("includes/header.php"); ?>
相对路径将取决于您包含文件的位置。上面的示例假定从Web根目录中的文件调用此include()
函数的文件。
答案 2 :(得分:1)
您无法使用互联网地址作为包含/要求的路径,而是使用物理路径,例如/htdocs/includes/header.php
。
答案 3 :(得分:0)
试试这段代码
$path = $_SERVER['HTTP_HOST'] . $_SERVER['SERVER_NAME'];
<?php include("$path/includes/header.php"); ?>