2012-12-05 70 views
0

我正在用codeigniter在php中写一个网站,imgs我在我的网站根目录的imgs文件夹中,我写了我的网站的首页和所有的imgs加载,视图加载,所有的CSS工作正常。我做了一个副本的视图,并重新命名为下一个视图,当我加载视图时,没有任何imgs加载,它是完全相同的代码作为拳头视图,它加载好,我不忍受这个,可以你请帮助。 我运行的Ubuntu 12.04, 笨2.1.3与mod_rewrite的img将不会加载codeigniter

编辑:

我留下破碎的代码指出,对于其他6个IMGS

此工作过的部分是没有工作的代码搭配:从固定的一切以下 代码,但三个项目:

<img src="<?php echo base_url('path/to/image.jpg'); ?>"> 

这是代码它并没有解决

<?php 
    if(!$this->session->userdata('is_logged_in')){ 
     echo '<BR />'; 
     echo '<a href='.base_url()."main/login".'><img src="imgs/log_in_0.png" /></a>'; 
     echo '<BR />'; 
     echo '<BR />'; 
     echo '<a href='.base_url()."main/signup".'><img src="imgs/sign_up_0.png" /></a>'; 
     echo '<BR />'; 
    } 

?> 

这个CSS加载背景:

body 
{ 
    background-image:url('imgs/green_tex.jpg'); 
} 
+0

发布您的代码。如果您无法正确格式化,则有人会对其进行编辑。 –

+0

我会记住下次无情 – John

+0

谢谢你告诉我 – John

回答

1

这很可能是一个相对VS绝对路径的问题。

我会假设你调用这样的图片:

<img src="path/to/image.jpg"> 

你应该做的,是叫他们这样的:

<img src="<?php echo base_url('path/to/image.jpg'); ?>"> 

提醒一下,你需要已经加载url助手以便base_url()工作。我建议将其添加到您的autoload.php文件中。

针对你最近编辑:

echo '<a href='.base_url()."main/login".'><img src="' . base_url('imgs/log_in_0.png') . '" /></a>'; 

并为CSS,你将不得不把路径手动,如:

background: url(/imgs/log_in_0.png); 
+0

更正它不适用于背景img在CSS或两项中,我将在一秒内编辑后发布 – John

+0

然后,您需要使用绝对URLS。将/放在CSS图像的url前面,或者使用从css文件到图像的相对路径。这不是一个CodeIgniter问题,而是你如何组织(编码)你的网站的前端。 – Brendan

+0

如果您花时间了解相对网址和绝对网址之间的区别,这将有所帮助,这样您就不会在将来遇到此问题:http://stackoverflow.com/questions/2005079/absolute-vs-relative -urls – Brendan