Uploadify y Codeigniter: cómo implementarlo

Enviado por Carxl el Mié, 02/23/2011 - 14:03.

Veremos como implementar la librería Uploadify de Jquery en Codeigniter.

Implementar Uploadify en Codeigniter al principio puede resultar doloroso si no se tienen algunas cosas claras.

Pautas para usar Uploadify en Codeigniter:

No mezcles sesiones con Uploadify
Esto quiere decir, que si en Codeigniter estás usando sesiones en la página que quieras usar Uploadify, lo más probable es que vayas a tener un inconveniente.
Debes cambiar tu .htaccess.

Tu .htaccess debe ser algo parecido a esto:

		Options +FollowSymLinks -Indexes
		DirectoryIndex index.php
		RewriteEngine on
		RewriteCond %{REQUEST_FILENAME} !-f
		RewriteCond %{REQUEST_FILENAME} !-d
		RewriteRule ^(.*)$ index.php/$1 [L,QSA]

		##
		RewriteRule ^uploadify/.*$ - [PT]
		RewriteRule ^uploads/.*$ - [PT]
		

Implementando Uploadify

Ok, vamos a hacer la implementación de Uploadify en Codeigniter.

Para el ejemplo, usaré la url de configuración: http://localhost/uploadify_codeigniter/

1. Descargar Codeigniter. (versión descargada: versión 2.0.0)

2. Configurar Codeigniter:

  • Definir el site_url en config.php
  • Crear y ubicar el .htaccess (debe ir en el raíz de tu proyecto Codeigniter)
  • Creamos dos directorios en el raíz: uploadify, uploads. Si estás en linux, al directorio uploads le damos permisos de escritura (si no lo haces, este tuto valdrá madre! xD).
  • Leer la primera pauta que escribí más arriba ;-)

Hasta ahora, no se ha usado nada de Uploadify, pero hemos abierto el camino para hacerlo: el .htaccess y las carpetas creadas.

Algo así debería verse en el raíz:

directorio raiz codeigniter

3. Descargar Uploadify

4. Descomprimir Uploadify en la carpeta que se creó previamente uploadify. (versión descargada uploadify 2.1.4)

5. Crear un controlador... (esta parte es aburridora, pero toca xD)

  • El controlador puede tener cualquier nombre.
  • El controlador intenta manejar estándares php5.
class Cualquiera extends CI_Controller
{
	private $_nombreControlador;

	public function __construct()
	{
		parent::__construct();
		
		//crear el nombre del controlador
		//es algo genérico para usarlo en cualquier momento
		$this->_nombreControlador = __CLASS__;
		$this->_nombreControlador = strtolower($this->_nombreControlador);
		
		//cargar el helper url
		$this->load->helper('url');
		
		//cargar el directorio principal
		$this->config->load('sitio');
	}

	public function index()
	{
		//ruta absoluta para subir las imágenes
		$datos['rutaAbsolutaSubir'] = "/{$this->config->item('dirPrincipal')}{$this->_nombreControlador}/upload";
	
		//cargar la vista
		$this->load->view('template', $datos);
	}
	
	public function upload()
	{
		//crear la ruta absoluta
        $targetPath = "{$_SERVER['DOCUMENT_ROOT']}/{$this->config->item('dirPrincipal')}/uploads/";
        
        if (!empty($_FILES)) {
            $nombreArchivo = $_FILES['Filedata']['name'];
			$tempFile = $_FILES['Filedata']['tmp_name'];
			$targetFile =  $targetPath.$nombreArchivo;
			if(move_uploaded_file($tempFile,$targetFile))
			{

			}
		}
		echo 1;
	}
}

 

6. Crear vista (esta parte también es aburridora xD)

  • Se hacen los respectivos llamados a los javascript y css.
  • Asignar un id al selector donde quiera usar uploadify.





Ejemplo de como implementar Uploadify en Codeigniter

You have a problem with your javascript

 

Para probar lo recién creado, ejecuten la url: http://localhost/uploadify_codeigniter/ y suba algunos archivos dando click en “Buscar”.

imagen buscar uploadify

 

Luego seleccinamos los archivos que queremos subir y aceptamos...

archivos uploadify subiendo

 

 

Si todo va bien, en la carpeta uploads, deben aparecer los archivos que subieron.

listado archivos subidos con uploadify

 

Si siguen con dudas, no se preocupen, como adjunto, está todo el código fuente para probarlo Wink

Espero les sirva.

Saludos.

AdjuntoTamaño
uploadify_codeigniter.tgz8.03 MB

aver que tal va ^^

Enviado por Anónimo (no verificado) el Jue, 03/31/2011 - 15:48.
aver que tal va ^^

hola: He descomprimido los

Enviado por juanjo (no verificado) el Jue, 08/11/2011 - 11:24.

hola:

He descomprimido los ficheros en mi carpeta del servidor y ejecutado el programa en el explorador, pero me aparece el mensaje You have a problem with your javascript

alguna idea?

Hola Juanjo. Acabé de

Enviado por Carxl el Mar, 08/16/2011 - 10:17.

Hola Juanjo. Acabé de descargar el ejemplo en mi compu verificando lo que me comentas y me funcionó perfecto Cool

Lo único que hice fue cambiar el parámetro:

$config['base_url']

Que está en el directorio config.

Espero te sirva.

Saludos!Laughing

igual q juanjo he tenido este

Enviado por israel (no verificado) el Sáb, 09/10/2011 - 16:06.
igual q juanjo he tenido este problema, lo hico correr asi como esta en tus indicaciones, y funciona, pero ya al kerer integrarlo con otro proyecto q tenia y copiando todos los archivos, me da es mensaje de q tengo algun problea con el Javascript, si pudieran ayudar a rastrear el conflicto, seria de gran ayuda xD

hola, he podido rastrear el

Enviado por israel (no verificado) el Dom, 09/11/2011 - 15:50.
hola, he podido rastrear el problema, que se encontraria en el archivo /application/config.php y seria por la siguiente configuracion: $config['url_suffix'] = ''; con esta configuracion funciona bien el uploadify, pero en mi proyecto use otras librerias para galerias de imagenes y demas, y estas me funcionaban con la configuracion $config['url_suffix'] = '.html'; asi que ahora tengo un problema, pues si cambio este valor me funciona una parte del sitio, y la otra no. Entonces, kiero que me ayuden con el uploadify, en que parte del codigo de .js debo cambiar para q me acepte esta configuracion con .html; espero q esta info nos ayude a resolver este conflicto y puedan responder pronto ;) gracias

Hola! La verdad lo que has

Enviado por Carxl el Vie, 09/16/2011 - 10:25.

Hola!

La verdad lo que has intentado con tu conf de ".html" nunca lo he probado en CodeIgniter. Creería que tiene que ver con las reglas que se escriben en el .htaccess.

Si logras un avance. déjamelo saber por favor.

Saludos!

Hola carxl muy bueno el tuto

Enviado por Víctor Hugo (no verificado) el Mié, 10/26/2011 - 22:08.
Hola carxl muy bueno el tuto y el codigo es de esos plug and play pero tengo ciertas dudas sobre lo de las sessiones y el htacces, buscando y revisando en google encontre esto http://www.uploadify.com/forums/discussion/43/ veo que flash tiene bugs con el manejo de las sesiones con php en fin me seria de mucha ayuda si explias con detalle el .htacces que esta en el tuto gracias de antemano.

Hola Victor Hugo! cómo

Enviado por Carxl el Lun, 11/07/2011 - 23:13.

Hola Victor Hugo! cómo vas?

Qué parte en sí necesitas que explique del .htaccess? Lo que hago es hacer accesible el directorio "uploads" con la instrucción  rewirte y su respectiva explresión regular.

Sañudos!Laughing

Boy that ralely helps me the

Enviado por Jailen (no verificado) el Dom, 11/20/2011 - 20:31.
Boy that ralely helps me the heck out.

funciona, muchas gracias,

Enviado por Anónimo (no verificado) el Mié, 02/29/2012 - 21:51.
funciona, muchas gracias, ahora solo investigare como utilizarlo como antes, me refiero a que el usuario tenga la opcion de eliminar las imagenes que no desea subir, antes de hacerlo

Enviar un comentario nuevo

  • Saltos automáticos de líneas y de párrafos.

Más información sobre opciones de formato

CAPTCHA
Esta pregunta se hace para comprobar que es usted una persona real e impedir el envío automatizado de mensajes basura.
CAPTCHA de imagen
Enter the characters shown in the image.