//miramos si el ip del visitante existe en nuestra tabla
$ssql = "select ip, fecha from control_ip where ip = '$ip'";
$result = mysql_query($ssql);
//si existe actualizamos el campo fecha
if (mysql_num_rows($result) != 0) $ssql = "update control_ip set fecha = ".$ahora." where ip = '$ip'";
//si no existe insertamos el registro correspondiente a la nueva sesion
else $ssql = "insert into control_ip (ip, fecha) values ('$ip', $ahora)";
//ejecutamos la sentencia sql
mysql_query($ssql);
//calculamos el numero de sesiones
$ssql = "select ip from control_ip";
$result = mysql_query($ssql);
$usuarios = mysql_num_rows($result);
//liberamos memoria
mysql_free_result($result);
//devolvemos el resultado
return $usuarios;
}
?>
Podéis observar, como viene siendo norma, que el script es expresado en forma de función. Después de definir la IP y el momento en el que el script está siendo ejecutado, pasamos a interaccionar con la base de datos. Dentro de este proceso, podemos distinguir distintas fases:
- Conexión con la base de datos
- Barrido de la tabla para eliminar los registros obsoletos.
- Inserción o actualización de un registro dependiendo de si el visitante es nuevo o no.
- Cómputo del número de registros de la tabla
La función finaliza liberando el espacio de memoria utilizado en sus consultas y enviando el resultado del cálculo efectuado.
En líneas generales el script es de fácil comprensión. Puede que alguna de las funciones empleadas os sea desconocida. Si es así, acudid al la
pagina oficial de PHP donde podréis encontrar detalles en cuanto a su empleo.
Para sacar el valor proporcionado por la función a nuestro script principal tendremos que realizar una llamada clásica del tipo:
$active_users = usuarios_activos();
He aquí en definitiva un script sencillo que puede dar a vuestro sitio una imagen un poco más dinámica. Además, podéis utilizarlo y mejorarlo para crear vuestro propio sistema de estadísticas internas. Eso os lo dejamos a vosotros...
Autor: mundomanuales.com
http://www.mundomanuales.com/programacion/php/usuarios-activos-con-php-299.html
Usuarios que han visto este tema también han visto...
- Redimensionar imágenes con PHP
- Generar documentos OpenOffice con PHP
- Una imagen cada día de la semana
- Cómo crear un plugin para WordPress
- Enviar un e-mail HTML con PHP
- Versión imprimible de este documento
- Enviar por e-mail este documento