Zen AJAX - Programador PHP
Click here to load reader
-
Upload
juan-belon-perez -
Category
Technology
-
view
701 -
download
3
description
Transcript of 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!
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 :
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 ;)