2013-11-22 38 views
0

我的hostname時PHP包括託管

http://gvidas.lhosting.info

裏面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"); ?> 

有什麼想法innstead?

回答

3

大多數Live服務器不會允許絕對的包括。您可以更新代碼,如下所示:

<?php include("includes/header.php"); ?> 

相對路徑將取決於您將文件包括在哪裏。上面的例子假設這個include()函數是從web根目錄的文件中調用的。

+0

這個./或../不工作:( –

+0

顯示你的目錄結構你在哪裏調用include()函數? – BenM

+0

這是我的結構:http://postimg.org/image/vge1ouy4h /我從index.php調用它 –

3

您應該使用物理位置而不是URI。

<?php include("/htdocs/includes/header.php"); ?> 
0

試試這個代碼

$path = $_SERVER['HTTP_HOST'] . $_SERVER['SERVER_NAME']; 

<?php include("$path/includes/header.php"); ?> 
1

您不能使用網絡地址作爲路徑包括/需要,使用物理路徑,而不是像/htdocs/includes/header.php