Templates y Temas para ExtJS y Sencha Touch Bleext!
Bleextop! un desktop OpenSource para Ext4 y CodeIgniter http://bit.ly/pUwLJO
Caducar sesión en PHP (por inactividad) y avisarle a ExtJs (redirigir al inicio)
  • Vote Up0Vote Down dapc21dapc21 February 10
    Posts: 9
    Hola amigos, soy nuevo en el foro, es un placer pertenecer a esta maravillosa comunidad.
    Bueno, quisiera que me ayudaran con algo que me imagino no es muy complicado. La cuestión es que un par de compañeros y yo hemos desarrollado un sistema, con ExtJs 3 + Codeigniter + PostgreSql. De hecho todavía sigue en desarrollo. Como muchos sabrán ExtJs es un framework que funciona del lado del cliente, y Codeigniter es otro framework que trabaja pero del servidor (PHP). En esta aplicación hago uso de sesiones, y las mismas caducan cada cierto tiempo. El detalle está en que cuando una determinada sesión caduca (PHP) la interfaz en ExtJs se sigue mostrando como si siguiera activa (obvio esto es el cliente). Ustedes dirán: "pero haz un simple AJAX y listo!", ok yo lo sé y lo entiendo. Pero al poseer múltiples botones que me conducen a un menú, y estos a su vez a un sub-menú, entonces tendría que hacer ese llamado a AJAX en cada uno de ellos así como en los formularios al hacer consultas, guardados, etc. Quisiera saber si en extjs hay algo o alguna forma muy global de hacer eso que quiero sin tener que colocar ese llamado en cada parte de mi aplicación, realmente me falta un mundo por conocer sobre ExtJs.

    En pocas palabras quiero mandarle un valor al cliente (ExtJs) para que se redirija a la página de inicio por el tiempo de inactividad de un usuario, y eso lo da PHP. quién o quienes me ayudan? :-D

  • 2 Answers sorted by
  • Vote Up0Vote Down CrysfelCrysfel February 13
    Posts: 897
    Yo lo que normalmente hago es extender la clase Ext.data.Connection, luego creo una instancia de esa extensión y la llamo algo como "Bleext.Ajax" y utilizo en todas mis clases este objeto para hacer peticiones Ajax, también modifico el código del proxy para que use mi clase en lugar de Ext.Ajax.

    Dentro de mi clase agrego la lógica para manejar de manera global mensajes de error, cuando la sesión caduca, etc..

    Saludos
  • Vote Up0Vote Down dapc21dapc21 February 14
    Posts: 9
    mmmm ok gracias Crysfel, de todas formas ya me ideé algo que me está saliendo bien evaluando las variables de sesión con la función empty en php. Si está vacía es porque la sesión expiró y mediante el ajax envío un valor "X" el cual capturo de regreso y me muestra un mensaje que indica al usuario que la sesión expiró por inactividad y que el sistema se reiniciará en 5 segundos, haciendo un conteo regresivo (hice una función para eso usando la clase Ext.util.TaskRunner), pero voy a tomar en cuenta tu consejo y ver que tal lo que me dices.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Login with Facebook Sign In with Twitter

Sign In Apply for Membership

In this Discussion

Poll

No poll attached to this discussion.