Zen AJAX - Programador PHP

3

Click here to load reader

description

Gracias a http://programadorphp.org/POA Aplicado en AJAX con zen_ajax de zenphp.

Transcript of Zen AJAX - Programador PHP

Page 1: Zen AJAX - Programador PHP

jbelon [en] correo [pto] ugr [pto] es

Serie de tutoriales simples con estilo

http://blog.zenphp.es

¡Creando AJAX rápido con estilo!

Page 2: Zen AJAX - Programador PHP

2

htt

p:/

/b

log

.ze

np

hp

.es

Una vez creada sólo necesitamos añadir a la plantilla HTML, los javascripts y las hojas de estilo

CSS a cargar, en el constructor de la clase del visualizador HTML para que se carguen siempre

en todos los scripts PHP que no sean AJAX y se “inicializen” en la navegador correctamente…

Como hemos asociado a nuestra clase un objeto zen_ajax podemos

hacer una función como esta: <?php

function mostrar(&$contenido,$antes="",$despues=""){

if ($this->padre->ajax->es_peticion_ajax){

$this->padre->ajax->mostrar($contenido,$antes,$despues);

} else {

$this->padre->padre->html->mostrar($contenido);

}

}

?>

Que muestra la sencillez del asunto XD

El índice de la página que será todo AJAX tendrá una pinta como el siguiente código:

<?php

function index(){

$c =& $this->c;

$c['titulo'] = "Ofertas";

$c['contenido'] = $this->padre->

ajax->obtener_seccion_ajax("contenido");

$this->mostrar($c);

}

?>

Lo primero que necesitamos es una clase :

Page 3: Zen AJAX - Programador PHP

3

htt

p:/

/b

log

.ze

np

hp

.es

Simple , ¿verdad?

Y ahora lo único que falta es ir añadiendo las cosas que son

AJAX: (que las definimos en el constructor del HTML con

$this->padre->ajax->anadir("contenido",array($this,"listado"));)

Ya podemos cargar ficheros desde AJAX automáticamente, siendo definidos en PHP

“contenido” es el nombre de la división usada para reemplazar un texto DHTML por otro con:

<?php

function listado(){

if ($this->padre->ajax->es_peticion_ajax){

$this->padre->ajax->poner_destino("contenido");

}

$html = $this->p->devolver_contenido('cosas/listado.html');

$this->mostrar($html);

}

?>

incluso si dichos ficheros llevan scripts:

<script language="JavaScript" type="text/javascript">

window.alert("Estoy siendo validado!");

var valida_frmReserva = new Validation('frmCrear',{immediate :

true,useTitles : true});

</script>

Serán reconocidos por la macro zen_ajax.js y se cargarán de modo que podremos añadir en

“caliente” validaciones con prototype.

Bueno ,ese es el resumen de todo, es súper sencilla la idea por eso me gusta tanto ;)