Actualizar vista despues de cargar imagenes con swfupload

202 views
Skip to first unread message

Matias Garat Ortiz

unread,
Jul 28, 2010, 10:36:46 PM7/28/10
to CodeIgniter-spanish
Hola amigos, tengo el siguiente problema. Cuando acceso a la vista
donde tengo el formulario para el upload de fotos utilizando swfupload
(digamos por ejemplo photos/upload) el js una vez que se han
seleccionado las fotos llama otra vez a la página para realizar el
proceso de carga y demas cosas en la db, esto lo hace llamando la url
desde el mismo js (la url es la misma photos/upload). El problema es
que una vez que finaliza, aunque yo indique que antes de finalizar la
función un "redirect (´photos/index')" o una carga de otra vista no lo
hace, sino que sigue "por defecto" en la misma vista. Esto se que no
sería un gran problema, salvo por el hecho de que no me permite cargar
los mensajes de error o de exito, ni me carga al final todas las fotos
que se han cargado recien.

bueno, espero haber sido claro con lo que intente describir del
problema.

Saludos!

Andres Martin Cantos Rivadeneira

unread,
Jul 28, 2010, 11:31:31 PM7/28/10
to codeignit...@googlegroups.com
No entiendo muy bien el problema... pero lo que te puedo decir es que
La funcion redirect del helper url.. de codeigniter recibe un parametro mas aparte de la url... por default es location..
pero prueba mandandole refresh para ver que pasa...
osea redirect (´photos/index','refresh')


--
---
Para anular la suscripción a este grupo, envía un mensaje a
codeigniter-spa...@googlegroups.com
Para obtener más opciones, visita este grupo en
http://groups.google.com/group/codeigniter-spanish?hl=es.

Matias Garat Ortiz

unread,
Jul 29, 2010, 1:43:36 AM7/29/10
to CodeIgniter-spanish
ya he probado y no funciona.
El problema es así:
cuando cargo la url http:/.../photos/upload me muestra un formulario
que tiene un campo donde el swfupload te permite hacer carga múltiple
de imágenes. Debajo de este formulario quiero mostrar las imágenes ya
subidas en el álbum sobre el cual estoy agregando fotos. Bien, una vez
que uno ha elegido las imágenes el swfupload automáticamente ejecuta
una función js que llama mediante url a un archivo php donde se
ejecuta la función de upload de las imágenes y todo lo demás que uno
quiera, bien? Ahora, una vez terminada esa ejecución, la del php, la
función js da un aviso de cuantas imágenes ha subido, borra el campo
del form para subir nuevas imágenes y nada más. Yo lo que quiero es
que la página se vuelva a cargar para que me muestre debajo las
imágenes recién subidas.

On 29 jul, 00:31, Andres Martin Cantos Rivadeneira
<ancanto...@gmail.com> wrote:
> No entiendo muy bien el problema... pero lo que te puedo decir es que
> La funcion redirect del helper url.. de codeigniter recibe un parametro mas
> aparte de la url... por default es location..
> pero prueba mandandole refresh para ver que pasa...
> osea redirect (´photos/index','refresh')
>
> El 28 de julio de 2010 21:36, Matias Garat Ortiz <matiasgarator...@gmail.com

Jimmy Collazos || acido || cuatroxl.com

unread,
Jul 29, 2010, 3:33:05 AM7/29/10
to codeignit...@googlegroups.com
Creo que eso no tiene nada que ver con CI

Imagino que en tu controlador tienes el uploader de las imágenes; pues una vez que has guardado las imágenes tendrás que pasarle un parámetro a la vista para que pinte dichas imágenes.

En caso de que el uploadder lo tengas en una página que no es un controlador... lo has echo mal  :P


--
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:::::::::::::::: J i m m y  C o l l a z o s :::::::::::::::::::::
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
desarrollado web; estándar, accesible, escalable
----------------------------------------------------------------------------
                                                                acido69

Matias Garat Ortiz

unread,
Jul 29, 2010, 3:38:59 AM7/29/10
to CodeIgniter-spanish
Jimmy, efectivamente el uploader esta en el controlador. A ver, el
controlador photos tiene una funcion llamada upload que, cuando carga
la vista, carga las imagenes existentes en la db para ese album, y
ademas el formulario de carga para nuevas imagenes. Al cargar las
imagenes en el form, el js llama a ese controlador y esa misma funcion
y ejecuta un "if", que depende de que no haya errores en la carga,
para hacer el uploader, ahora... como lo hace via ajax no me esta
recargando la página, y no responde a ningun redirect que haga al
final. solo finaliza la carga de esas imágenes y nada más.

Jimmy Collazos || acido || cuatroxl.com

unread,
Jul 29, 2010, 3:50:01 AM7/29/10
to codeignit...@googlegroups.com
Si utilizas Ajax, lo tienes más fácil:

Busca el events onLoadSucces (función que se ejecuta una ves terminada la carga) y vuelves a ejecutar otro ajax para traer las imágenes que acabas de subir

<<P431i7o>>

unread,
Jul 29, 2010, 7:00:14 AM7/29/10
to codeignit...@googlegroups.com
creo que no necesitas usar el redirect de php, prueba usando el redirect de javascript cuando detecta que ha terminado la subida
<SCRIPT language="JavaScript">
<!--
window.location="http://algunLugar.com";
//-->
</SCRIPT>
tambien tienes que asegurarte de que no haya algun error en script, muchas vecers cuando tratas de acceder a una propiedad inexistente no aparece el error en el debug, pero la ejecucion se detiene  y puede ser que por eso no llegue siquiera a intentar la redireccion en tu codigo.

Saludos Cordiales
---------------------------------------------
Pablo F.Ruiz Diaz Rios
Desarrollo Web con tecnologias de PHP, MySQL, AJAX (aunque tecnicamente ajax no es una nueva tecnologia,sino, la combinacion de varias)
messenger: http://tinymailto.com/p431i7omsn

PROTEGE TU RED:

     Compartimos mensajes. Así que POR FAVOR, si vas a realizar un reenvío de este correo o cualquier otro recibido, BORRA mi dirección de correo y todas las direcciones de correo que aparezcan en los textos.
    Proteje las direcciones de  tus amigos y la mía, enviando solo como CCO o BCC, Con copia oculta y NO PARA, ni CC: para evitar que usen nuestras direcciones y recibir correos no deseados, virus, spam etc.



--
---
Reply all
Reply to author
Forward
0 new messages