• 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[solved] accessing images in the view (strange behaviour)

Hello everyone,

Long time reader, first time poster. I've got a very strange problem. Maybe you can help.

In a view I try to load a file (previously uploaded). I check if it exists first and if it does I then display it. Check the code.

<?php if (file_exists(base_url() . 'img/image.jpg')) : ?>
    <img src="&lt;?php echo base_url() . 'img/image.jpg'; ?&gt;" />
&lt;?php endif ; ?&gt;

The problem is that the file_exists() function always returns FALSE even if I know for sure that given file does exist. For example this:

&lt;?php if (file_exists(base_url() . 'img/image.jpg')) : ?&gt;
    <h2>file found:</h2>
    <img src="&lt;?php echo base_url() . 'img/image.jpg'; ?&gt;" />
&lt;?php else : ?&gt;
    <h2>file NOT found:</h2>
    <img src="&lt;?php echo base_url() . 'img/image.jpg'; ?&gt;" />
&lt;?php endif ; ?&gt;

will display "file NOT found:" and draw the image anyway. I'm confused, please help. The /img/ catalog is already added to my .htaccess file.

Your problem is with file_exists(): http://php.net/manual/en/function.file-exists.php

It expects a relative path to the file on your system, not an HTTP:// style url - which is what base_url is giving you.

I believe you can try getting rid of the base_url portion and just feed it the image path of img/image.jpg, as it is all relative to the front-controller index.php file unless specified otherwise.

Thank you, works like a charm.

Digg   Delicious   Reddit   Facebook   Twitter   StumbleUpon  

  Theme © 2014 iAndrew  
Powered By MyBB, © 2002-2020 MyBB Group.