no funciona... bueno esta es la funcion entera
Código PHP:
function Logueo_usuario($codusu)
//comprueba mediante una consulta a la tabla tagn_session si el usuario que se esta logueando esta activo o no, si lo esta entonces no podra volver a iniciar sesion hasta que cierre su // sesion
{
$query_ingreso_usuario =
"SELECT codigo_usuario FROM tagn_session WHERE activo=1 and codigo_usuario='" .
$codusu . "'";
$res_ingreso_usuario = $this->db->getOne($query_ingreso_usuario);
if ($this->db->isError($res_ingreso_usuario)) {
echo $this->error = "DB Error: [" . $res_ingreso_usuario->getDebugInfo() . "]";
} else {
return $res_ingreso_usuario;
}
}
function validarLogin($user, $pswd)
{
$ingresausu = $this->Logueo_usuario($user);
//die($ingresausu);
if (!empty($ingresausu))
//si la consulta en Logueo_usuario esta llena, ntonces saldra un mensaje indicandole que no puede //ingresar y lo regresara a la pagina de logueo
{
echo "<script type='text/javascript'>
if (!confirm('Usted esta en linea en estos momentos, solo puede tener una sesion abierta a la veZ, primero debe de cerrar su sesion, ¿Desea hacerlo?'))
{
history.back();
}
else{ ";
$objactual_session = new TablaDetalle();
$objactual_session->actualizarTablaSesion($user);
echo "alert('posiblemente resuelto xD');
history.back();
};
</script> ";
//die($user);
} else //de lo contrario podra ingresar al sistema
{
global $s_var;
$this->sid = '';
if (!$user) {
$this->error .= '- El Código de Usuario no ha sido ingresado.<br>';
}
if (!$pswd) {
$this->error .= '- La clave de acceso no ha sido ingresada.<br>';
}
if (!$this->error) {
$query = "SELECT * FROM tagn_usuarios WHERE codigo_usuario=?";
$res = $this->db->query($query, array($user));
if ($this->db->isError($res)) {
$this->error .= "- Error del sistema. DB Error: [" . $res->getDebugInfo() .
"]<br>";
} else {
if (!$res->numRows()) {
$this->error .= "El Código de Usuario ingresado no se encuentra registrado en el sistema.<br>";
} else {
while ($res->fetchInto($row)) {
$data = $row;
$password = trim($row['clave']);
}
if (md5($pswd) != trim($password)) {
$this->error .= '- La clave de acceso no es válido.<br>';
} else {
//Opciones habilitadas para el usuario.
$query = "SELECT * FROM tagn_usuarios WHERE codigo_usuario=?";
$_SESSION['login'] = true;
$_SESSION['usuario'] = $data['codigo_usuario'];
$_SESSION['idusuario'] = $data['id_usuario'];
$_SESSION['area_usuario'] = $data["codigo_almacen"]; //Cambiar el area 35:Lima, 36 Arequipa
$_SESSION['perfil'] = $data["perfil"]; //Cambiar el area 35:Lima, 36 Arequipa
$_SESSION['data'] = $data;
$_SESSION['sid'] = session_id();
//Aqui se debe enviar a la ventana por defecto, incluyendo los perfiles del usuario.
$objmodulos = new permisos_usuarios;
$modulo_usu = $objmodulos->modulo_usuarios($_SESSION['usuario']);
if (empty($modulo_usu)) {
header('Location: index.php?logout=1');
exit();
}
header("Location: bienvenido.php");
//header('Location:' . trim(strtolower($modulo_usu)) . '.php');
$fecha = date("Y-m-d H:i:s");
$id_sesion = $this->getCodSesion();
$query_session = "INSERT INTO tagn_session (id_sesion, codigo_usuario, fecha, activo)";
$query_session .= "VALUES ('" . $id_sesion . "' ,'" . $_SESSION["usuario"] .
"', '" . $fecha . "',1)";
$res_session = $this->db->query($query_session);
if ($this->db->isError($res_session)) {
echo $this->error = "DB Error: [" . $res_session->getDebugInfo() . "]";
}
//exit();
}
}
}
}
}
}