base_url()在Internet Explorer中无法正常工作(CodeIgniter)

时间:2013-02-28 00:33:33

标签: php codeigniter base-url

我的导航栏图像和链接在CHROME中加载正常但在INTERNET EXPLORER中加载相同页面时图像不会加载但显示无图像图标。 IE中的链接就像这样

笨/ index.php的/消息/ index.php的/消息/

而不仅仅是

笨/ index.php的/消息

但是,IE设法成功加载css,即使它也使用base_url()...这里是我的代码:

test.php的

<head>
<base href="<?php echo base_url() ?>">
<link rel="stylesheet" type="text/css" href="public/css/main.css">
</head>
 <nav>
    <ul>

     <li><a href="index.php/news">
     <img src = "public/images/home.png" alt="Home" title="Home"/>
     </a></li>


     <li><a href="index.php/news/create">
     <img src = "public/images/create.png" alt="Create new article" title="Create new article"/>
     </a></li>

    </ul>
 </nav>

的config.php

  $config['base_url']   = 'http://localhost/CIgniter/CodeIgniter/';

答案

引用:Fabios的建议很成功,感谢<img src = "<?=base_url('public/images/home.png')?>" alt="Home" title="Home"/>的工作,即使它将来会很痛苦。谢谢你的帮助!

2 个答案:

答案 0 :(得分:0)

Fabios的建议很成功,谢谢

<img src = "<?=base_url('public/images/home.png')?>" alt="Home" title="Home"/>

虽然将来会很痛苦,但仍有效。谢谢你的帮助!

答案 1 :(得分:0)

真正的问题是你使用的是相对路径,例如public/images/home.png而不是/public/images/home.png,开头的斜杠告诉浏览器它应该根据你指定的绝对路径检索内容$config['base_Url'] = ...而不是它的当前路径(我的意思是你到达CodeIgniter/index.php/news并且你已经指定了它的相对路径,这就是为什么它附加到它产生错误的路径CodeIgniter/index.php/news + index.php/news/) 因此,当您在路径的开头添加斜杠时,它将引用绝对路径,它将在CodeIgniter/index.php/news处找到。