RSS .92| RSS 2.0| ATOM 0.3
  • Inicio
  • Correo Web
  •  

    De vuelta

    Junio 12, 2007 @ 15:53
    Alex Sancho

    Como habréis notado, estas ultimas semanas la actividad del weblog ha sido nula, el motivo, una carga de trabajo brutal.

    Entre encargos, proyectos personales y experimentos casi no he tenido un minuto libre y cuando lo he tenido no habían ganas de escribir.

    El caso es que una de las actividades que me ha tenido ocupado es que he comenzado a trabajar con CodeIgniter un fantástico framework para PHP que implementa el modelo MVC (Model-Viewer-Controller).

    Lo cierto es que resulta realmente fácil construir aplicaciones basándose en este framework, la curva de aprendizaje es casi nula, ofrece la posibilidad de extender las librerías base casi al 100% y la carga que añade al servidor es casi nula.

    Poco a poco intentare ir adentrándome mas en este framework y prometo compartir lo que vaya aprendiendo.

    Para empezar a abrir boca, os dejo una clase que extiende la clase nativa “CI_Output”, el objetivo de esta personalización es el añadir métodos para enviar datos en formato “Ajax” desde los controladores.

    Ademas auto detecte el soporte “mime” del cliente para poder añadir/enviar las cabeceras correctamente dependiendo del soporte “xhtml” del navegador.

    MYOutput.zip

    MYOutput.tar.gz

    Como podréis observar, la clase tiene cuatro funciones publicas, “IsAjax”, “addJson”, “sendJson” y “sendAjax”.

    El uso de la clase es muy sencillo, tan solo tenemos que utilizar el método correspondiente para detectar si la consulta es “Ajax” y en el caso de serlo enviaremos los datos precedidos del “Content-Type” correpondiente.

    Un detalle a tener en cuenta es que si necesitamos enviar contenido en formato Json la clase se encarga de codificarlos, es por ello que la librería es para uso exclusivo bajo PHP5+.

    En el siguiente ejemplo lo veréis mas claro:

    <?php
        if($this->output->isAjax()) {                                                                                                                                     
            $data = $this->load->view('viewer/template', '', true);                                                                                                            
            $this->output->sendAjax($data);                                                                                                                                                                                                                                                 
        }
        ?>

    Por otra parte, la detección del tipo “mime” es totalmente automática, cuando se carga la clase se seleccionan las cabeceras pertinentes y se configura la variable “xhtml” con true o false.

    Yo lo utilizo de la siguiente manera,

    <?php if($this->output->xhtml) echo '<?xml version="1.0" encoding="UTF-8"?>'."\n";?>

    Comentarios (0) | | Digg It! | | ma.gnolia |




    del.icio.us:De vuelta digg:De vuelta spurl:De vuelta wists:De vuelta simpy:De vuelta newsvine:De vuelta blinklist:De vuelta furl:De vuelta reddit:De vuelta fark:De vuelta blogmarks:De vuelta Y!:De vuelta smarking:De vuelta meneame:De vuelta

    Articulos relacionados:
    De tablero
    De regreso del OME y algunos links
    Bloggers viajeros
    De comunidades a sociedades
    Meta-chistes

    Permalink Via Alex Sancho PHP

    Comentarios desactivados.