Foros del Web » Programando para Internet » PHP »

Datos Inicio Sesion

Estas en el tema de Datos Inicio Sesion en el foro de PHP en Foros del Web. Cordial saludo, Tengo una base de datos en PHP que consta de los siguientes campos ID - Identificador numerico autoincremental (clave primaria) EMPRES - Identificador ...
  #1 (permalink)  
Antiguo 08/02/2016, 15:57
 
Fecha de Ingreso: enero-2016
Mensajes: 8
Antigüedad: 8 años, 3 meses
Puntos: 0
Datos Inicio Sesion

Cordial saludo,

Tengo una base de datos en PHP que consta de los siguientes campos
ID - Identificador numerico autoincremental (clave primaria)
EMPRES - Identificador de la empresa a la que pertenece tinyint(4)
USUARIO - Es el login de 15 caracteres y es UNIQUE
NOMBRE - Alfanumerico de 40
CONTRAS - Contraseña alfanumerica de 15
ACCESO - Un caracter e identifica si: 0=SUPER_USUARIO, 1=USUARIO, 2=INVITADO

Pienso tener un pagina que diga Sesion.php, ahi iniciaria sesion dando su login y contraseña, mi pregunta es:

¿Como guardo los datos ID,EMPRES y ACCESO para que este disponible para el resto de paginas que deseo hacer? como por ejemplo Ingresar_Facturas.php, Registrar_pagos.php, etc.
  #2 (permalink)  
Antiguo 08/02/2016, 16:47
 
Fecha de Ingreso: diciembre-2015
Mensajes: 529
Antigüedad: 8 años, 4 meses
Puntos: 39
Respuesta: Datos Inicio Sesion

en Sesion.php, recibes el dato "empres" por ejemplo de la consulta a la sql para validar el login, y le indicas que dicho valor lo almacene la variable session "empres", si no está creada, el navegador la creará, si lo está, la sustituirá.

Código PHP:
Ver original
  1.  
  2. $empres = $row['empres'];
  3. $_SESSION['empres'] = $empres;

Y en cualquier otro archivo la mandas a llamar así

Código PHP:
Ver original
  1.  
  2. $eSession = $_SESSION['empres'];
  3. echo $eSession;
  #3 (permalink)  
Antiguo 08/02/2016, 16:54
Avatar de stone_neo  
Fecha de Ingreso: abril-2004
Ubicación: Peru
Mensajes: 438
Antigüedad: 20 años
Puntos: 15
Respuesta: Datos Inicio Sesion

Puedes crearte un Bean Usuario y que esta tenga toda la información que necesites. Luego cuando te loguees creas una sesión y guardas el bean Usuario con toda su información en sesion y lo recuperas desde cualquier pagina cuando necesites.

Te dejo un ejemplo de como seria el php que procesa el login

Código PHP:
<?php
require_once 'class/DUsuario.php';

$usuario = new Usuario();
$dUsuario = new DUsuario();

$opcion $_GET['opcion'];
$resu "";
if(
$opcion == "login"){
    
$txtUsuario $_POST['txtUsuario'];
    
$txtPassword $_POST['txtPassword'];
    
$idUsuario $dUsuario->login($txtUsuario,$txtPassword);
    if(
$idUsuario 0){
        
session_start();
        
$usuario $dUsuario->cargarUsuario($idUsuario);
        
$_SESSION['usuario'] = serialize($usuario);
        
header("location:index.php");
    }
    else
        
header("location:login.php?res=0");
}
if(
$opcion == "logout"){
    
session_start();
    
session_unset();
    
header('location:login.php');
}
?>
Luego creas un archivo por ejemplo seguridad.php que debes incluir en todas tus paginas que quieres que tengan seguridad

Código PHP:
<?php
require_once 'class/Usuario.php';

session_start();
//Valida si tienes en sesion la variable usuario que es donde guardamos los datos de nuestro bean Usuario
if (!isset($_SESSION['usuario'])){
    
header('Location:login.php');
}
else{
    
$usuario = new Usuario();
        
//Aqui recupero el Bean Usuario
    
$usuario unserialize($_SESSION['usuario']);
        
//Y ya en cualquier pagina puedo acceder a los datos del bean Usuario simplemente llamando a $usuario
}
?>
Espero haberme dado a entender y poderte haber apoyado. Eso si el codigo que te pase es solo para que tes una idea, ahi estoy usando otras clases propias mias que no las tienes.

Saludos
__________________
Rubén Darío Huamaní Ucharima
Web : http://www.gorilla-soft.com
Usuario Linux #382 100 :-)

Etiquetas: inicio
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:12.