正确的资源路径

时间:2014-03-27 00:39:35

标签: php codeigniter path smarty

当文件调用css或js文件时,我遇到了路径问题。

我使用Codeigniter也使用Smarty模板引擎。我的基本网址是> http://local.project

我的css和js文件位于> project / site / assets / css和project / site / assets / js

问题是,当我从视图中调用资源时,路径是一团糟,找不到错误。

我尝试了很多方法,但仍然无法做到。我开始认为这可能是Codeigniter的路径问题。我的意思是......也许我错过了一些我无法理解的东西。

当我使用浏览器进行检查时,我可以看到这是默认设置> http://local.project/

然后从视图中我称之为>

<script type="text/javascript" src="{site_url()}assets/js/jquery.flot/jquery.flot.js"></script>

但是构建的路径是&gt;

http://local.project/%7Bsite_url()%7Dassets/js/jquery.flot/jquery.flot.js 400 (Bad Request) 

我在这里疯狂,任何帮助都会非常感激!

5 个答案:

答案 0 :(得分:0)

尝试使用 base_url()而不是site_url()。

尝试:

<?php
    echo "<script type='text/javascript' src='" . base_url() . "assets/js/jquery.flot/jquery.flot.js'></script>" ;
?>

答案 1 :(得分:0)

尝试:

<script type="text/javascript" src="/assets/js/jquery.flot/jquery.flot.js"></script>

<script type="text/javascript" src="/js/jquery.flot/jquery.flot.js"></script>

你可以提供你的IP,以查看页面吗?

答案 2 :(得分:0)

要使用base_url(),您需要在控制器中调用URL帮助程序:

$this->load->helper('url');

然后在你看来:

<script type="text/javascript" src="<?php echo base_url();?>assets/js/jquery.flot/jquery.flot.js"></script>

答案 3 :(得分:0)

首先加载url helper

$this->load->helper('url');

其次使用此

获取基地址
echo base_url();

最后你的基地址是“http://local.project”,最后没有斜线,所以试试这个

<script type="text/javascript" src="<?php echo base_url();?>/assets/js/jquery.flot/jquery.flot.js"></script>

并确保您的基地址没有任何额外字符,例如空格或输入

答案 4 :(得分:0)

我能成功。刚打开我的Smarty.php文件并将此行视图/ admin更改为视图

        $this->setTemplateDir(APPPATH.'views');

之后,我可以在视图中使用的网址是

<script type="text/javascript" src="assets/js/jquery.flot/jquery.flot.js"></script>