|

My-BIC: otro framework Ajax

My-BIC es otro más de los numerosos frameworks que han aparecido para desarrollar aplicaciones Ajax. Ofrece 3 ficheros y un diseño que permite centrarte en realizar las cosas, más que en iniciar la tarea, siendo válido para PHP4 y PHP5.
Ofrece soporte para XML, JSON y texto en las transacciones Ajax, a parte de funcionar para Safari, Firefox, IE y Opera.
Dentro de las novedades que ofrece la recién versión 1.0, nos encontramos con: facilidad para trabajar con formularios, debug, integración con Firebug.
My-BIC
Vía / PHPDeveloper.org

|

PHPLiveX: librería PHP y Ajax

PHPLiveX es una librería PHP que facilita la llamada desde Ajax a funciones PHP. Genera código Javascript que implementa funciones con los mismos nombres y argumentos dados en una lista de funciones PHP. Cuando el código Javascript generado es llamado, empieza la petición Ajax que invoca a su respectiva función PHP en el servidor.

Actualmente está probado para los navegadores Mozilla, Firefox, Internet Explorer y Opera. Su uso parece muy sencillo En el código PHP debes indicar la función:

<?php
function miFuncion($texto){
return $texto;
}
$plx = new PHPLiveX("miFuncion");
// También se puede hacer así
// $plx = new PHPLiveX();
// $plx->Export("miFuncion");
?>

Y luego en el HTML debes escribir lo siguiente:

<script type="text/javascript">
<? $plx->Run(); ?>
</script>

PHPLiveX

Vía / VT’s Tech Blog

|

SAJA: Ajax seguro con PHP

SAJA es una librería para usar Ajax en PHP de forma segura, sin necesidad de crear ningún Javascript y dando soporte a PHP4 y PHP5.
Está diseñado para crear de forma rápida aplicaciones Ajax secillas, seguras y fáciles de mantener.
Se trata de crear funciones PHP que se encarguen de todo, no es necesario registrar callbacks, ni de importar otras funciones. Tan solo se escribe una función y se llama.
La seguridad que nos ofrece es debido a que las peticiones SAJA sólo son válidas si el usuario está actualmente en la página desde donde proviene la petición. A parte, para darle mayor seguridad, se puede encriptar los datos de entrada del usuario antes de que se envíen al servidor.
Tan solo ocupa 14K y 3.8K para el usuario final. No utiliza XML debido a que pesa demasiado y a que parsearlo requiere más proceso que con datos normales. No es necesario escribir código Javascript a no ser que quieras hacer algo fuera de lo común.
SAJA
Vía / Ajaxian

| |

Laboratorio: no permitir que accedan directamente a las urls empleadas en Ajax

Cuando usamos Ajax en nuestras aplicaciones solemos usar un script específico que devuelva los datos preparados para que el cliente los interprete y los muestre.

En algunas ocasiones no suele ser de nuestro agrado que usuarios accedan directamente a las URLs empleadas para Ajax.

Para evitar esta situación se puede usar un script sencillo. Se tomará en cuenta el valor de la variable de entorno HTTP_REFERER, la cual nos devuelve desde qué página se accede a nuestro script.

$ref = getenv('HTTP_REFERER');

Si el contenido de esta variable es false entonces es que se ha accedido directamente desde el navegador, si no, es que se accede desde una página, también habrá que comprobar que la página es la que nosotros queremos.

<?php
$ref = getenv('HTTP_REFERER');
if (!$ref || $ref != '[nuestra url]') {
?>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"xhtml1-transitional.dtd">
<html>
<head>
<title>Sentido Web - Redireccionamiento Ajax</title>
</head>
<body>
<h1>Sentido Web - Redireccionamiento Ajax</h1>
<p><?php echo "Hola, son las ".date("H:i:s"); ?></p>
</body>
</html>
<?php
} else {
echo "Hola, son las ".date("H:i:s");
}
?>

En este caso mostraremos una página cuando no haya referer o no sea el que nosotros esperamos. También se podría hacer para que el referer estuviera en el servidor, pero eso lo dejo para que lo haga el que lo necesita.

Una funcionalidad parecida se podría usar por temas de accesibilidad, dependiendo de un parámetro que indique si se trata de una llamada Ajax o no, se devuelva la información para el script del cliente o se muestre la información en una página.

<a href="url-ajax.php" onclick="ajax('url-ajax.php?ajax=1')">Enlace</a>

En el caso de haber problemas de accesibilidad, el enlace accede a la página con la información. En caso contrario, ejecuta la funciona ajax(), indicándole que se trata de una llamada Ajax para que nos devuelva la información formateada, ya sea en XML o JSON o como queramos.

| |

AJAX paso a paso: Información de imágenes

AJAX tiene muchas utilidades, y aunque a veces se abusa de ello, siempre nos puede dar agilidad a la hora de cargar la página, vamos a mostrar un caso de cómo cargar datos nuevos en la página una vez se haya finalizado la carga de la página en sí. Para ello, un ejemplo que nos viene perfecto es una galería de imágenes y cargar los datos de cada imágen de forma asíncrona, que puede ser costoso si se carga la página con los datos de las imágenes y que el usuario tenga que esperar a esta información, cuando es posible que no le interese. A parte, explicaremos otro tipo de método de recibir datos, esta vez mediante el método POST y un XML.
ajax-imagenes.png

Read More “AJAX paso a paso: Información de imágenes”