|

Ajax paso a paso: el ahorcado

Seguimos con nuestro especial sobre AJAX. Esta vez vamos a intentar dar un ejemplo de interactividad con el usuario y nada mejor para ello que un juego: el ahorcado.
ahoracado.png

La verdad es que los juegos de este tipo ya no se estilan, pero es un ejemplo sencillo que podemos usar para otros casos, por ejemplo formularios, encuestas, … Se trata de que el usuario interactúa sin preocuparse y la aplicación reacciona según lo que haga el usuario.

Read More “Ajax paso a paso: el ahorcado”

Nuevos productos Google

google.pngGoogle acaba de lanzar varios productos o versiones de productos.
La primera de ellas es Google Trends, que nos muestra una comparativa de lo que busca la gente. Escribimos separado entre comas lo que queremos comparar y nos devuelve una gráfica que muestra el volumen de búsquedas y el de noticias.
google-trends.png
Google Desktop saca la versión 4, que como novedad incluye la posibilidad de añadir Google Gadgets para personalizar tu escritorio y barra lateral.
google-desktop.png
El que me ha resultado más “difuso” es Google Co-op, el cual quiere que se comparta experiencia. Tú puedes ayudar con tu experiencia y beneficiarte de la de los demás, creando sitios a los cuales subscribirte, los cuales te aparecerán en las búsquedas que realices. Ya he dicho que a mi no me resulta sencillo, pero es que a alguien tan geek como Steve Rubel, tampoco le resulta nada fácil, por ejemplo dice que él se subscribió a Digg y que cuando realizó búsquedas, no apareció Digg por ningún lado.
Otra de las aplicaciones anunciadas es Google Notebook, la cual es un bloc de notas que te sigue desde tus búsquedas hasta las páginas, copiando partes de información. Aún no está disponible, por lo visto hay que esperar hasta la semana que viene.
Y por último, el chat ya está disponible en GMail en español, poco a poco las nuevas funcionalidades de GMail aparecen en otras versiones de idiomas.
Vía / Digg

Laboratorio: controlar el tiempo de sesión con PHP

Una de las cuestiones que hay que tener en cuenta por temas de seguridad es controlar el tiempo en el que está activa la sesión. Por ejemplo, para evitar que una persona olvide “desconectarse” y otro aproveche su usuario cuando no esté.

Las sesiones en PHP se controlan con la variable $_SESION, que es un array que contiene las variables de sesión. En nuestro caso, comprobaremos si existe una variabla de sesión que contenga el ID de sesión, si la hay, se recupera el tiempo en el que empezó la sesión (un timestamp) y se comprueba si ha pasado el tiempo máximo de sesión activa (en nuestro ejemplo 1 minuto), si ha sobrepasado el tiempo, se borran los datos de la sesión.

Una vez comprobada si la sesión debe seguir activa, se comprueba si sigue existiendo la sesión (vamos, que si no hemos acabado con ella), miramos si se ha pedido crear la sesión, por ejemplo cuando nos hemos logueado, en este caso, nos creamos las dos variables de sesión: el id y el timestamp.

<?php
// Inciamos la sesión
session_start();
?>
<?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 - Sessiones</title>
</head>
<body>
<p>
<?php
// Primero miramos si la sesión es válida
// Cuando el tiempo que lleva activa sea menor que 1 minuto
if (isset($_SESSION["ID_SESSION"])) {
$antes = $_SESSION["SESION_TIME"];
// Si lleva más de 1 minuto (60 segundos)
if (time()-$antes > 60) {
// Libramos la sesion
session_unset();
session_destroy();
echo 'Finalizó la sesión. <br/>';
}
}
// Si ya hay sesión lo indicamos
if (isset($_SESSION["ID_SESSION"])) {
?>
Hay SESIÓN (<?php echo $_SESSION["ID_SESSION"]; ?>)
<?php
// Si no hay sesión
} else {
// Si se ha pedido la creación de una sesion
if (isset($_GET["accion"])) {
// se quiere crear una sesion
// Se crea la variable de sesion id de sesion
// y tiempo en el que empieza la sesion
if ($_GET["accion"] == "1") {
$_SESSION["ID_SESSION"] = "ID".rand();
$_SESSION["SESION_TIME"] = time();
?>
Has creado la sesión <?php echo $_SESSION["ID_SESSION"]. " " .$_SESSION["SESION_TIME"]; ?>
<?php
// No se quiere crear la sesión
} else {
?>
No has querido crear sesión.
<?php
}
// No hay sesión, se avisa y
// se pregunta si se quiere crear una
} else {
?>
No hay SESIÓN. ¿Quiere crear una?
<input type="button" value="SI" onclick="document.location='sesion.php?accion=1'" />
&nbsp;
<input type="button" value="NO" onclick="document.location='sesion.php?accion=0'" />
<?php
}
}
?>
</p>
</body>
</html>
| |

La respuesta de Microsoft a Google Analytics

MicrosoftMicrosoft parece que quiere competir con Google Analytics haciendo una gran inversión en la empresa de estadísticas web DeepMetrix. Microsoft incluirá este servicio en la mayoría los sitios que dispone (Microsoft AdCenter, Internet Search, Office Live y MSN Spaces). Aunque en ningún momento hablan de Google, da la impresión de que su finalidad es luchar contra Google Analytics, claro, que lo bueno de Google Analytics es poder incluirlo en tu propio sitio, sin depender quién es el proveedor, claro, eso si tienes o puedes acceder a una cuenta.
DeepMetrix
Vía / Download Squad

| |

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”

links for 2006-05-09