2011-04-13 135 views
11

¿Cómo puedo mostrar imágenes con el framework php Codeigniter?¿Cómo puedo mostrar imágenes con el framework php de Codeigniter?

Quiero buscar una imagen de la carpeta images dentro de views.

que utiliza este código en uno de los archivos php views:

<img border="0" src="images/hed_05.jpg" width="61" height="133"> 

Pero no está funcionando.

+0

Creo que preguntas como estas se cierran con demasiada facilidad. – McGafter

Respuesta

1

Quizás la ruta en el atributo src sea incorrecta. Tal vez intente

<img border="0" src="/images/hed_05.jpg" width="61" height="133"> 
+0

No es inútil también – Buffon

+2

Será inútil solo si su carpeta de imágenes no vive en la carpeta base (no debería estar en su carpeta de visualización). Galen está en lo correcto con el código anterior – Chris

8

Por favor ver la etiqueta img CI User Guide/HTML Helper():

echo img('images/picture.jpg'); 
// gives <img src="http://site.com/images/picture.jpg" /> 
20

imágenes, CSS, JavaScript, archivos PDF, XML ... cualquier cosa que se le permite acceder directamente no debería ser viviendo en su directorio de aplicaciones. Usted puede hacerlo, pero realmente no debería. Cree una nueva carpeta en la raíz de su directorio para estos archivos, no deben mezclarse en su aplicación, por ejemplo: en su carpeta views.

  1. Lo más probable es que esté utilizando un archivo .htaccess, que solo permite el acceso a determinados directorios a través de http. Esto es muy bueno por razones de seguridad, desea detener cualquier intento de acceder directamente a sus controladores y modelos. Esta es también la razón por la que verificamos si BASEPATH se define en la parte superior de la mayoría de los archivos, y exit('No direct script access.') si no es así.
  2. Para obtener la ruta de acceso correcta a estos recursos (js/css/images), no puede usar rutas relativas, porque no estamos utilizando una estructura de directorios normal. La url /users/login no está cargando archivos desde el directorio /users/login, probablemente ni siquiera existe. Estos son solo segmentos uri que usa el programa de arranque para saber qué clase, método y params usar.

para obtener la ruta correcta, utilice una barra inclinada (asumiendo que su aplicación y los activos se encuentran en el directorio raíz, no un subdirectorio) así:

<img src="/images/myimage.jpg" /> 

O su mejor apuesta, utilice una URL absoluta:

// References your $config['base_url'] 
<img src="<?php echo site_url('images/myimage.jpg'); ?>" /> 

equivalente a:

<img src="http://mydomain.com/images/myimage.jpg" /> 

Hay asistentes integrados en CI que puede utilizar también, pero esto es todo lo que necesita saber.

+0

moviendo mi directorio 'images' Desde el directorio' applications' hasta el directorio raíz lo resolvió para mí ... – dsdsdsdsd

2

Puede también acaba de establecer su base href en el <head>:

<base href="<?php echo site_url(); ?>" />

Ahora, cualquier imagen, el archivo CSS y otro activo será relativa a la URL de su base.

<base href="http://site.com/" />

<img src="images/foo.jpg" />

es, en efecto,

<img src="http://site.com/images/foo.jpg" />

Sus imágenes deben estar fuera de la carpeta de la aplicación (por ejemplo, en /images) sin embargo.

+0

Al agregar esto en el encabezado resultó en una página completamente en blanco. :( – Tim

Cuestiones relacionadas