Foros del Web » Programando para Internet » PHP »

Administracion de sesiones con PHP

Estas en el tema de Administracion de sesiones con PHP en el foro de PHP en Foros del Web. Buenos dias, necesito ayuda para hacer lo siguiente: necesito montar una pagina que simplemente permita a los usuarios acceder al sistema luego de ser autenticados ...
  #1 (permalink)  
Antiguo 29/08/2008, 10:00
 
Fecha de Ingreso: agosto-2008
Ubicación: Caracas
Mensajes: 51
Antigüedad: 15 años, 7 meses
Puntos: 0
Administracion de sesiones con PHP

Buenos dias, necesito ayuda para hacer lo siguiente:

necesito montar una pagina que simplemente permita a los usuarios acceder al sistema luego de ser autenticados y no se como hacerlo ya que soy extremadamente nuevo programando. Entonces necesito que me guien sobre como puedo hacerlo para que solo puedan acceder a las otras paginas aquellos usuarios que hayan pasado el proceso de autenticacion correctamente y que no puedan brincarse este proceso colocando en la url la direccion de la pagina directamente sin haber autenticado antes.
(inicialmente los usuarios y contraseñas los iria guardando en un archivo .txt luego me meteria a trabajar con BD)

Mil gracias de antemano
  #2 (permalink)  
Antiguo 29/08/2008, 10:07
Avatar de the_web_saint  
Fecha de Ingreso: mayo-2008
Ubicación: localhost/tierra/america/panama
Mensajes: 1.229
Antigüedad: 15 años, 11 meses
Puntos: 43
Respuesta: Administracion de sesiones con PHP

Debes crear un script en php que te verifique si existe un usuario registrado con ese user y pass, esto lo incluyes al principio de cada pagina que desees validar, si se valido, entonces muestras la pagina, de no ser asi redireccionas a la pagina de acceso..

Saludos
__________________
..::The Saint::..
El pesimista se queja del viento; el optimista espera que cambie; el realista ajusta las velas.
  #3 (permalink)  
Antiguo 29/08/2008, 10:12
Avatar de Yedi  
Fecha de Ingreso: junio-2006
Ubicación: México
Mensajes: 159
Antigüedad: 17 años, 10 meses
Puntos: 2
Respuesta: Administracion de sesiones con PHP

Hola

Yo utilizo este codigo para verificar si un usuario ya inicio sesion y si es asi le permite ver la pagina, de lo contrario lo manda a la de login.
Código PHP:
session_start();
    
$cveemp=$_SESSION['cveemp'];
    if (!isset(
$cveemp)) {
    
header("Location: login.php"); 
    } 
Espero te sirva
  #4 (permalink)  
Antiguo 29/08/2008, 10:15
Avatar de the_web_saint  
Fecha de Ingreso: mayo-2008
Ubicación: localhost/tierra/america/panama
Mensajes: 1.229
Antigüedad: 15 años, 11 meses
Puntos: 43
Respuesta: Administracion de sesiones con PHP

bueno lo que te he dicho en palabras se te ha otorgado en codigo, que más pedir!!

solo usalo y suerte!
__________________
..::The Saint::..
El pesimista se queja del viento; el optimista espera que cambie; el realista ajusta las velas.
  #5 (permalink)  
Antiguo 29/08/2008, 10:20
 
Fecha de Ingreso: agosto-2008
Ubicación: Caracas
Mensajes: 51
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: Administracion de sesiones con PHP

Gracias por la informacion, ya verifico el comando session_start() para entender que es cada variable ($cveemp por ejemplo) y probar
  #6 (permalink)  
Antiguo 29/08/2008, 10:22
Avatar de the_web_saint  
Fecha de Ingreso: mayo-2008
Ubicación: localhost/tierra/america/panama
Mensajes: 1.229
Antigüedad: 15 años, 11 meses
Puntos: 43
Respuesta: Administracion de sesiones con PHP

eso no es una variable definida en php, si Yedi no me deja mentir, es como el codigo del usuario logeado, si no esta seteada, quiere decir que no se ha logeado.
__________________
..::The Saint::..
El pesimista se queja del viento; el optimista espera que cambie; el realista ajusta las velas.
  #7 (permalink)  
Antiguo 29/08/2008, 10:24
Avatar de Yedi  
Fecha de Ingreso: junio-2006
Ubicación: México
Mensajes: 159
Antigüedad: 17 años, 10 meses
Puntos: 2
Respuesta: Administracion de sesiones con PHP

asi es de hecho esa variable es solo como referencia
Suerte!!
  #8 (permalink)  
Antiguo 29/08/2008, 11:26
 
Fecha de Ingreso: agosto-2008
Ubicación: Caracas
Mensajes: 51
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: Administracion de sesiones con PHP

gracias, cualquier novedad les pego un grito. saludos
  #9 (permalink)  
Antiguo 29/08/2008, 11:40
Avatar de masterojitos  
Fecha de Ingreso: julio-2008
Ubicación: Lima Callao Chucuito
Mensajes: 1.931
Antigüedad: 15 años, 9 meses
Puntos: 105
Respuesta: Administracion de sesiones con PHP

Mejor te recomendaria que una vez logeado, guardes en session el id.....
Código PHP:
$_SESSION['usuario']="codigo"
y finalmente, en cada pagina donde va a navegar el usuario, llamar a un archivo llamado por ejemplo validar.php
Código PHP:
<?php
session_name
();
session_start();
if(!isset(
$_SESSION['usuario'])){
    
header("location: index.php?error=Ingrese Correctamente");
}
?>
donde error puede ser una variable que recibas en index.php y la imprimas si existe.... y por ultimo llamas en cada pagina asi:
Código PHP:
<?php
require "validar.php";
//......bla bla bla   demas codigo
Plis... llenen mi karma si les parece satisfactorio mi aporte.... gracias.
__________________
Atte. MasterOjitos :ojotes:
Todo sobre Programación Web
Las ultimas tendencias en Efectos y Recursos Web: MasterOjitos Blog
  #10 (permalink)  
Antiguo 30/08/2008, 10:35
 
Fecha de Ingreso: agosto-2008
Ubicación: Caracas
Mensajes: 51
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: Administracion de sesiones con PHP

Master una pregunta y disculpa mi ignorancia, el codigo donde valido el usuario debe ir (preferiblemente) en la misma pagina donde se pide el ingreso de usuario y password y/o en donde defino el valor de $_SESSION['usuario']="codigo";
o va entre las comillas despues de $_SESSION['usuario']=

ademas otra pregunta para las otras paginas solo le tendria que agregar el codigo que esta mas abajo y en caso de no haber iniciado sesion lo redireccionaria al inicio y en caso contrario permitiria ver la pagina??

<?php
session_name();
session_start();
if(!isset($_SESSION['usuario'])){
header("location: index.php?error=Ingrese Correctamente");
}
?>
  #11 (permalink)  
Antiguo 30/08/2008, 10:41
Avatar de the_web_saint  
Fecha de Ingreso: mayo-2008
Ubicación: localhost/tierra/america/panama
Mensajes: 1.229
Antigüedad: 15 años, 11 meses
Puntos: 43
Respuesta: Administracion de sesiones con PHP

dONDE PIDES EL USER Y PASS, CREAS LA VARIABLE DE SESSION, EN LAS OTRAS PAGINAS QUE DESEAS VALIDAR, ENTONCES COLOCAS EL CODIGO QUE VERIFIQUE SI ESTA LOGEADO O NO!
__________________
..::The Saint::..
El pesimista se queja del viento; el optimista espera que cambie; el realista ajusta las velas.
  #12 (permalink)  
Antiguo 30/08/2008, 10:48
Avatar de masterojitos  
Fecha de Ingreso: julio-2008
Ubicación: Lima Callao Chucuito
Mensajes: 1.931
Antigüedad: 15 años, 9 meses
Puntos: 105
Respuesta: Administracion de sesiones con PHP

Cita:
Iniciado por josefrl Ver Mensaje
Master una pregunta y disculpa mi ignorancia, el codigo donde valido el usuario debe ir (preferiblemente) en la misma pagina donde se pide el ingreso de usuario y password y/o en donde defino el valor de $_SESSION['usuario']="codigo";
o va entre las comillas despues de $_SESSION['usuario']=

ademas otra pregunta para las otras paginas solo le tendria que agregar el codigo que esta mas abajo y en caso de no haber iniciado sesion lo redireccionaria al inicio y en caso contrario permitiria ver la pagina??

<?php
session_name();
session_start();
if(!isset($_SESSION['usuario'])){
header("location: index.php?error=Ingrese Correctamente");
}
?>
haber, para la primera pregunta, respondo:
en la pagina donde validas el usuario y password, una vez validado lo envias a una pagina para que verifique los datos, la cual te pongo el codigo abajo, ayi mismo una vez verificado los correctos accesos, guardas en session su codigo.

mira te dejo mi codigo que utilizo..... solo cambias cositas....
Código PHP:
<?php
    
require('DATOS/Conexion.php'); //clase donde esta la conexion a la base de datos
    
$con=new Conexion();//funcion conexion
    
$username=$_REQUEST['nombre'];//recojo el usuario
    
$password=$_REQUEST['clave'];//recojo la clave
    
$rs=mysql_query("select * from usuario where usu='$username' and pas='$password'");
    if (
mysql_num_rows($rs)<=0){        
        
header("location: index.php?error=Error en Usuario/Password");
    }else{
        
session_name();
        
session_start();    
        
$_SESSION['usuario']=mysql_result($rs,0,"usu");
        
session_encode();
        
header("location: principal.php");//pagina una vez logeado......
        //tambien puedes enviarlo a la misma, pero en index.php tendrias que validar por si existe la session del usuario
    
}
?>
y la segunda ps mas facil aun....
no tienes que copiar el codigo que te puse en cada pagina, ya que como tambien mencione, solo tendrias que incluir al archivo donde si debe ir el codigo, osea
en cada pagina pones: require "validar.php"; o include "validar.php"; que da igual, donde validar.php es la pagina que contiene todo el codigo de verificacion de la session.
__________________
Atte. MasterOjitos :ojotes:
Todo sobre Programación Web
Las ultimas tendencias en Efectos y Recursos Web: MasterOjitos Blog
  #13 (permalink)  
Antiguo 30/08/2008, 20:55
 
Fecha de Ingreso: agosto-2008
Ubicación: Caracas
Mensajes: 51
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: Administracion de sesiones con PHP

Muchas gracias nuevamente hermano, saludos.
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 21:31.