我是php的新手,我正在处理一个项目,我正面临着链接css和js文件的一些问题。
现在,当项目执行时,第一个index.php加载(位于根目录中),其中包含home.php,其中的所有内容都正确执行。
但是一旦你点击“主页”上的“关于”链接,该页面就被重定向到about.php(位于Presentation / about.php内),这里css和js链接失败...... 。
在执行index.php时,它成功地获取了css链接(链接如下)
<link href="css/bootstrap-theme.min.css" rel="stylesheet">
但后来当页面被重定向到about.php时,它期望链接
<link href="../css/bootstrap-theme.min.css" rel="stylesheet">
我正在使用这些链接的公共文件,我保留header.php中的所有链接(位于Presentation / Template / header.php)
我还在config.php(位于inc / config.php)中定义了所有路径
我在config.php中定义了如下路径
// SITE_ROOT contains the full path to the RichTongue folder
define('SITE_ROOT', dirname(dirname(__FILE__)));
// Application directories
define('PRESENTATION_DIR', SITE_ROOT . '/Presentation/');
define('TEMPLATE_DIR', PRESENTATION_DIR.'Template/');
define('BUSINESS_DIR', SITE_ROOT . '/Business/');
define('CSS_DIR', SITE_ROOT. '/css/');
define('FONT_DIR', SITE_ROOT . '/fonts/');
define('IMAGE', SITE_ROOT . '/images/');
define('JS', SITE_ROOT . '/js/');
所以我尝试以下列方式链接css
<link href="<?php echo CSS_DIR ?>bootstrap.min.css" rel="stylesheet" >
现在上面的代码给了我一个chrome错误
Not allowed to load local resource: file:///C:/xampp/htdocs/RichTongue/css/bootstrap.min.css
home.php:13
现在上面错误中的路径(file:/// C:/xampp/htdocs/RichTongue/css/bootstrap.min.css)是正确的,但它没有加载文件并给出错误(上面指定的错误)
问)我该怎么办?什么是在PHP中链接css和js文件的正确方法?
需要帮助
答案 0 :(得分:0)
使用绝对路径链接您的css和其他资源似乎是一个简单的解决方案。
绝对路径来自您网站的根目录:C:/xampp/htdocs/RichTongue
而不是file:///C:/xampp/htdocs/RichTongue/css/bootstrap.min.css
您可以使用/css/bootstrap.min.css
所以你必须修改
define('CSS_DIR', SITE_ROOT. '/css/');
到
define('CSS_DIR', '/css/');
与其他资源(js,font等)相同
结果如下:
<link href="/css/bootstrap-theme.min.css" rel="stylesheet">
答案 1 :(得分:0)
假设您有一个名为css
的文件夹,您可以使用这样的真实路径:
define('CSS_DIR', realpath(dirname(__FILE__).'/css'));
然后你将使用这样的常量路径:
echo CSS_DIR."/style.css";
答案 2 :(得分:0)
为SITE_ROOT设置URl路径
如果你的项目路径是C:/xampp/htdocs/RichTongue/css/bootstrap.min.css
所以用下面的行改变
define('SITE_ROOT', 'http://localhost/RichTongue');
答案 3 :(得分:0)
尝试像这样使用它:
$SITE_FOLDER_NAME = "demo/"; define('SITEURL', 'http://'.$_SERVER['SERVER_NAME'].'/'.$SITE_FOLDER_NAME); define('SITEURL_CSS', SITEURL.'css/');
答案 4 :(得分:-2)
./ assets / CSS / filename.css 为我做了工作。