Pidgin + cuenta de Google Apps

Actualmente varias organizaciones, asociaciones y empresas están usando Google Apps en sus dominios para ahorrarse ciertos dolores de cabeza y para hacerse la vida mas placentera, dejándole a terceros (en este caso Google) la gestión de servicios como correo electrónico, intercambio de documentos, calendarios, servicio de mensajería instantánea e incluso hacer simples paginas web.

Por cierto, yo también soy miembro de algunas de esas organizaciones, y me vi en la necesidad de usar Pidgin para tener mis cuentas de google apps activadas junto con mis demás cuentas de mensajería instantánea, mas que todo por orden.

Esta simple, pero muy útil acción ha mantenido organizado aun mis cuentas de mensajería instantánea, pero no todos han tenido éxito configurando Pidgin con cuentas de google apps (por ejemplo @gsusx y @aAnuVizZ)

Entonces para evitarme la fatiga de escribir los parámetros, mejor les paso una imagen de la actual configuración de mis cuentas.

cuentas con google apps

cuentas con google apps

detalles de configuración

detalles de configuración

detalles de configuración

detalles de configuración

detalles de configuración

detalles de configuración

Eso es todo, se conecta con una cuenta de google apps, y tambien se guardan las conversaciones en nuestra seccion chats de Gmail.

Happy chatting :P

Nota: La version de Pidgin que uso actualmente (por si existe la curiosidad) es la 2.5.2

Ejercicio PHP: Autenticación de usuarios con sesiones en PHP y MySQL

Este es un ejemplo simple de autenticación de usuarios usando sesiones en PHP y consultando a una base de datos en MySQL. Voy a evitar pegar demasiado código en el post y me limitare a colocar enlaces hacia otra ubicación donde sea mas inteligible el mismo. (Solo pondré las partes esenciales en el post, el resto de código está en los enlaces)

En primer lugar, algunos datos necesarios:

  • Servidor: localhost
  • Usuario: usuario_mysql
  • Password: clave_mysql
  • Nombre de la base de datos: ejemplos

Luego el esquema simple de la tabla usuarios, que almacenara el nombre del usuario y la clave.

La manera mas práctica de organizar funciones en PHP es ubicarlas en un solo archivo, en este caso lo denominare funciones.php y este es su contenido. Este archivo posee funciones que permiten conectarse a la base de datos, consultar la existencia de un registro en la misma y verificar si la sesión fue iniciada con el nombre de usuario, cada vez que se desee utilizar solo bastaría poner include(‘funciones.php’) para incluirlo en cualquier script PHP.

Una vez que tenemos las funciones creadas, ya podemos empezar con el formulario de entrada (index.php), lo importante es que contenga algo tan simple como esto:

<form method=’POST’ action=’index2.php’>
Usuario <input type=’text’ name=’usuario’/><br/>
Password <input type=’password’ name=’clave’><br/>
<input type=’submit’ value=’Ingresar’/><br/>
</form>

Este formulario enviara dos valores (usuario y clave) hacia el archivo index2.php, este archivo recogerá los datos enviados y los usará en la función conexiones(), si el usuario existe se iniciará la sesión e ingresará a las páginas permitidas para el usuario (ingreso.php, sistema.php), si no existe volverá al formulario de ingreso.

<?php
include (‘funciones.php’);
//usuario y clave pasados por el formulario
$usuario = $_POST['usuario'];
$clave = $_POST['clave'];
//usa la funcion conexiones() que se ubica dentro de funciones.php
if (conexiones($usuario, $clave)){
header(‘Location:ingreso.php’);
} else {
header(‘Location: index.php’);
}
?>

Ingreso.php y todas las páginas que se desean mantener disponibles solo a usuarios registrados deberán tener la forma de:

<?php
include (‘funciones.php’);

if (verificar_usuario()){
//aqui debe venir todo el contenido necesario que solo el usuario validado puede acceder
print “Desconectarse <a href=’salir.php’/>aqui</a>”;
} else {
header(‘Location:index.php’);
}
?>

Donde se usa la función verificar_usuario(), para permitir el acceso si es que el nombre del usuario fue configurado en una sesión, si la función devuelve un valor falso, retornara al formulario de entrada. Es necesario que todas las paginas posean parte de este código, así se evitará que un intruso pueda poner la url de una pagina interna y esta sea visible o accesible sin haber verificado al usuario.

Para salir del sistema y borrar la sesión se usa el archivo salir.php, este archivo contiene instrucciones para destruir la sesión y volver al formulario de ingreso, también esta validado solamente para usuarios verificados:

<?php
include (‘funciones.php’);
if (verificar_usuario()){
session_unset();
session_destroy();
header (‘Location:index.php’);
} else {
header (‘Location:index.php’);
}
?>

Lo que no se debe olvidar al agregar mas paginas al sitio es incluir el archivo de funciones.php y usar la función verificar_usuario() para poder elegir entre el contenido al que debe acceder el usuario validado y el contenido para el visitante (usuario no validado).

Este ha sido un ejemplo simple de uso de sesiones en PHP, consultando a una base de datos en MySQL, existen muchas formas de lograr esto y obviamente mejorarlo, este es solo un ejercicio, útil para comprender el uso de sesiones.

Happy PHP Coding :)