Foros del Web » Programando para Internet » PHP »

Sesión PHP

Estas en el tema de Sesión PHP en el foro de PHP en Foros del Web. Hola a todo/as. Estoy haciendo una página la cuál, quiero que me pida contraseña para entrar y lo tengo puesto con este código: Código PHP: ...
  #1 (permalink)  
Antiguo 14/05/2009, 08:10
 
Fecha de Ingreso: octubre-2007
Mensajes: 38
Antigüedad: 16 años, 6 meses
Puntos: 0
Sesión PHP

Hola a todo/as.

Estoy haciendo una página la cuál, quiero que me pida contraseña para entrar y lo tengo puesto con este código:

Código PHP:
<?
session_register
('Adm');
if(
$_POST["p"]){
    if(
$_POST["p"]=="lalala"){
        
$_SESSION['Adm']="Identificado";
    }else{
        
$_SESSION['Adm']="lelele";
    }                                            
}
?>
Código PHP:
<? if($_SESSION['Adm']=="Identificado"){ ?>
Todo lo que tengo en este if es el contenido privado y en el else tengo puesto otra vez el formulario. La cuestión es que si le pongo la contraseña buena, me deja entrar al contenido privado pero en cuanto pincho en las acciones que tengo ahí (mediante switch), me tira de la sesión y me vuelve a pedir contraseña. Me pasa con IE y Firefox. Alguien sabe por que???
  #2 (permalink)  
Antiguo 14/05/2009, 08:17
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Sesión PHP

Ese session_register que está al inicio no es necesario.

Es mejor que uses directamente session_start().

Además, asegúrate que tengas el session_start() en todas las páginas.

Véase: http://www.php.net/manual/es/function.session-start.php
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 14/05/2009, 08:19
Avatar de By_George  
Fecha de Ingreso: abril-2009
Ubicación: localhost
Mensajes: 629
Antigüedad: 15 años
Puntos: 19
Respuesta: Sesión PHP

por que en el primer if evaluas un valor que viene por post, y claro con en la primera accion si recibe el valor te muestra la informacion y despes cuando le das a un link u ptra cosa vuelve a evaluar el valor por post pero este se pierde por eso te vuelve a pedir contraseña;

seria mejor que solo evaluaras si la variable de sesion existe y si existe te muestre lo que quieras, y como la variable de sesion se mantiene mientras exista te dejara entrar
__________________
La estadística es una ciencia que demuestra que si mi vecino tiene dos coches y yo ninguno, los dos tenemos uno.
  #4 (permalink)  
Antiguo 03/06/2009, 08:01
 
Fecha de Ingreso: octubre-2007
Mensajes: 38
Antigüedad: 16 años, 6 meses
Puntos: 0
Respuesta: Sesión PHP

Cita:
Iniciado por By_George Ver Mensaje
por que en el primer if evaluas un valor que viene por post, y claro con en la primera accion si recibe el valor te muestra la informacion y despes cuando le das a un link u ptra cosa vuelve a evaluar el valor por post pero este se pierde por eso te vuelve a pedir contraseña;

seria mejor que solo evaluaras si la variable de sesion existe y si existe te muestre lo que quieras, y como la variable de sesion se mantiene mientras exista te dejara entrar
Serías tan amable en ponerme el código? Me estoy volviendo loco con esto... antes funcionaba este código y modifiqué código de esta página pero no toqué lo de la sesión...
  #5 (permalink)  
Antiguo 03/06/2009, 08:05
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: Sesión PHP

Código PHP:
session_start();
if(empty(
$_SESSION["Adm"])){
   
$_SESSION['Adm']="lelele"
}else{
   
$_SESSION['Adm']="Identificado"

tambien puede ser

Código PHP:
if(isset($_SESSION["Adm"])){
   
$_SESSION['Adm']="Identificado"
}else{
   
$_SESSION['Adm']="lelele"

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 00:48.