2016-11-06 64 views
0

我有一個問題我的連接profile.php問題鏈接我的文件PHP

主文件夾

index.php 
page1.php 
page2.php 
page3.php 
server folder 
css folder 
include folder 
user folder 

服務器文件夾包含

css文件夾包含

stylesheet.css 

包括文件夾公司ntains

header.php 
footer.php 

用戶文件夾包含

profile.php 

所有的文件都

include ROOT.'include/header.php'; 
include ROOT.'include/footer.php'; 

我的header.php

<!doctype HTML> 
<html> 
<head> 
    <link rel="stylesheet" type="text/css" href="css/stylesheet.css"> 
</head> 
<body> 

我用

012內
chdir('maindirectory'); 
define('ROOT', getcwd().DS); 

一切工程,除了我的profile.php似乎不能加載我的CSS文件。爲什麼iam將配置文件分解爲用戶,因爲我使用htaccess刪除'.php',並且我想允許用戶搜索用戶/'用戶名'。

如果我永遠不會分開,我會遇到其他頁面出現問題,例如example.com/page2,它會搜索用戶而不是轉到第2頁。

+0

當加載'profile.php'和CSS文件不加載,你檢查的瀏覽器網頁檢查,看看那裏的瀏覽器嘗試(失敗),以獲得css文件來自?我不完全肯定你的問題,但這聽起來像是因爲'profile.php'在用戶文件夾中,它試圖在'user/css/stylesheet.css'找到css文件而不是'css/stylesheet.css' 。 – JamesStewy

+0

通過使用 解決了這個問題href ='/ main/css/stylesheet.css /'; 還是謝謝! – Craig

回答

0

嘗試包括使用$ _ SERVER [「DOCUMENT_ROOT」] ROOT的文件,而不是或定義爲ROOT $ _ SERVER [「DOCUMENT_ROOT」]

0

你並不需要使用CHDIR和定義就知道工作文件夾。您可以使用__DIR__常量返回工作目錄(見斜槓包括__DIR__不返回最後一個斜線):

include __DIR__ . '/include/header.php'; 
include __DIR__ . '/include/footer.php'; 

在profile.php __DIR__具有root /用戶價值。這意味着喲需要做的:

include __DIR__ . '/../include/header.php'; 
include __DIR__ . '/../include/footer.php'; 

如果您的PHP版本不支持__DIR__,您可以使用目錄名(__ FILE__)來代替:

include dirname(__FILE__) . '/include/header.php'; 
include dirname(__FILE__) . '/include/footer.php'; 

如果你不知道或懷疑你總是目錄可以呼應:

echo __DIR__; 
+0

profile.php仍然無法鏈接到css – Craig

+0

您需要知道您的基本網址並添加到標題。php鏈接標記 – Mork

+0

http://stackoverflow.com/a/2820771/1546012 – Mork