saludos
miembro.php
Código PHP:
<?php
require_once('formularios.php');
require_once('autentificar_usr.php');
require_once('url.php');
session_start();
$form= new Muestra();
$check= new Autentica();
$link= new Direccion();
$form-> html_encabezar('MIEMBROS');
try
{
if($usrname && $passwd)
{
$check-> identificar($usrname, $passwd);
}
$form-> html_finalizar();
}
catch (Exception $e)
{
$titulo= "Problema:";
$form->html_subcomentar($titulo);
$msg= $e-> getMessage();
echo $msg;
exit();
}
$form->html_encabezar("INICIO");
$check-> chequear_usuario_valido();
//devuelve los marcadores del usuario
if ($urlArray= $link-> usr_urls($usuarioValido));
$form-> mostrar_urls($urlArray);
//muestra el menu de opciones
$form-> mostrar_menu();
$form-> html_finalizar();
?>
Código PHP:
<?php
require_once('conexion.php');
class Autentica
{
private $servidor= 'localhost';
private $usuario= 'gerardo';
private $clave= 'gerardo';
private $baseDatos= 'marcadores';
private $base;
public $opc= "";
//Asi se crea y usa un objeto dentro de una clase
function __construct()
{
$this-> base= new Conecta($this-> servidor, $this-> usuario, $this-> clave, $this-> baseDatos);
}
function registrar($usrname, $passwd, $mail)
{
try
{
$opc= 1;
$this-> base->obt_opc($opc);
$consultaStr= "select * from usuario where nombUsuario= '$usrname'";
$this-> base-> consultar($consultaStr);
$this-> base-> desconectar_base();
}
catch (Exception $e)
{
$msg= $e->getMessage();
echo $msg;
exit();
}
try
{
$insertarStr= "insert into usuario(nombUsuario, clave, correo) values('$usrname', '$passwd', '$mail')";
$this-> base-> consultar($insertarStr);
$this-> base-> desconectar_base();
}
catch (Exception $e)
{
$msg= $e-> getMessage();
echo $msg;
exit();
}
return TRUE;
}
function identificar($usrname, $passwd)
{
try
{
$opc= 3;
$this-> base->obt_opc($opc);
$consulta= "select * from usuario where nombUsuario= '$usrname' and clave= '$passwd'";
$resultado= $this-> base-> consultar($consulta);
$this-> base-> desconectar_base();
if($resultado== TRUE)
{
echo "Bienvenido $usrname";
$usuarioValido= $usrname;
session_register("usuarioValido");
}
}
catch (Exception $e)
{
$msg= $e-> getMessage();
echo $msg;
exit();
}
if(!$usrname && !$passwd)
{
throw new Exception("No has podido identificarte correctamente, debes identificarte para porder acceder al sitio");
exit();
}
}
function chequear_usuario_valido()
{
global $usuarioValido;
if(session_is_registered($usuarioValido))
{
echo "Sesion correspondiente a $usuarioValido";
echo '<br>';
}
else
{
echo "PROBLEMA";
}
}
//forma de generar clave alfanumerica
function resetear_clave($usrname)
{
$cadena= "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890";
for($i=0; $i<9; $i++)
{
$contraseña.= substr($cadena, mt_rand(0, 62), 1);
}
try
{
$actualizar= "update usuario set clave= '$contraseña' where nombUsuario= '$usrname'";
$resultado= $this-> base-> consultar($actualizar);
$this-> base-> desconectar_base();
if($resultado!= TRUE)
{
throw new Exception("<b>ERROR::</b> Tu clave no se ha podido midificar, intenta nuevamenta mas tarde.");
}
else
{
return $contraseña;
}
}
catch (Exception $e)
{
$msg= $e-> getMessage();
echo $msg;
exit();
}
}
function notificar_clave($username, $passwd)
{
try
{
$opc= 2;
$this-> base->obt_opc($opc);
$consultar= "select correo from usuario where nombUsuario= '$username'";
$resultado= $this-> base-> consultar($consultar);
$this-> base-> desconectar_base();
if(!$resultado)
{
throw new Exception("<b>ERROR::</b> Tu nueva clave no ha podido ser enviada a tu mail, porfavor intenta nuevamente");
}
else
{
$correo= mysql_result($resultado, 0, "correo");
$de= "From: [email protected] \r\n";
$mesg= "Tu contraseña de Links ha sido cambiada a $passwd \r\n"
."Por favor utiliza la misma la proxima vez que entres al sitio. \r\n";
if(mail($correo, "información de Links", $mesg, $de));
{
echo "Tu nueva clave fue enviada con exito a tu dirección de email.";
}
}
}
catch(Exception $e)
{
$msg= $e ->getMessage();
echo $msg;
exit();
}
}
//esta funcion reeplaza la clave de la base de datos
function cambiar_clave($username, $viejo_passwd, $nuevo_passwd)
{
if(identificar($username, $viejo_passwd))
{
$actualizar= "update set clave= '$nuevo_passwd' where nombUsuario= '$username'";
$resultado= $this-> base->consultar($actualizar);
$this-> base-> desconectar_base();
}
if(!$resultado)
{
throw new Exception("<b>ERROR::</b>La clave no ha podido ser modificada.");//return false
}
else
{
return TRUE;
}
}
}
?>