Foros del Web » Programando para Internet » PHP »

Ayuda de sesion

Estas en el tema de Ayuda de sesion en el foro de PHP en Foros del Web. Hola tengo un problema Mi sistema web es que una vez de haberse logeado le vota a un menu en el cual esta obligado a ...
  #1 (permalink)  
Antiguo 14/01/2009, 11:28
(Desactivado)
 
Fecha de Ingreso: diciembre-2008
Mensajes: 421
Antigüedad: 15 años, 4 meses
Puntos: 0
Pregunta Ayuda de sesion

Hola tengo un problema
Mi sistema web es que una vez de haberse logeado le vota a un menu en el cual esta obligado a llenar un formulario de trabajo si o si pero solo una vez como hago yo para q no lo vuelva a llenar este formulario cuando vuelva a iniciar sesion y le muestre su menu de nuevo pero ya deshabilitado esta opcion

Hay algun comando de php o como puede hacer muchas gracias
  #2 (permalink)  
Antiguo 14/01/2009, 11:31
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Ayuda de sesion

guarda una variable de sesión, cookie, archivo, BD, etc...

Código PHP:
$_SESSION['formulario'] = true
luego comparas este valor, mientras no sea true quiere decir que no ha sido contestado, o como gustes!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 14/01/2009, 12:56
okram
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Ayuda de sesion

Creo que se refiere a sólo una vez en "toda su vida". Si ese es el caso, añade un campo a tu tabla de usuarios que indique si el usuario ya lleno ese formulario o no. Al registro, ese campo será 0, y cUando lo llene cambias el valor a 1.

  #4 (permalink)  
Antiguo 16/01/2009, 08:27
(Desactivado)
 
Fecha de Ingreso: diciembre-2008
Mensajes: 421
Antigüedad: 15 años, 4 meses
Puntos: 0
Pregunta Respuesta: Ayuda de sesion

Hola podrian ser un poco mas explicitos por favor
  #5 (permalink)  
Antiguo 16/01/2009, 15:57
okram
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Ayuda de sesion

Lo mismo digo... No se te puede dar más ayuda con lo que nos dijiste. Si no te diste cuenta, estamos casi adivinando cuál es tu problema.
  #6 (permalink)  
Antiguo 16/01/2009, 16:05
(Desactivado)
 
Fecha de Ingreso: diciembre-2008
Mensajes: 421
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Ayuda de sesion

Bueno esto es asi
Cuando entra un usuario a mi sistemas le vota automaticamente a un menu donde esta un link que dice llene su registro lo q quiero es q este usuario (x ya logeado ) cuando llene este formulario no le vuelve a aparecer mas cuando inicie su sesion que solamente una vez sea llenado este formulario y no puede llenarlo mas estuve haciendo esto pero no me resulta:
<?php
session_start();
$_SESSION[datos] = false;
if (session_is_registered(datos)){
?>
<li> <a href= "ficha_registro.php">Ficha Individual</a> </li><br>
<?php
} else {
echo "llene esto";
}

?>

tiene otra mejor idea les agradeceria
  #7 (permalink)  
Antiguo 16/01/2009, 16:11
okram
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Ayuda de sesion

Primero, las cadenas textuales siempre deben ir entre comillas.

Luego, no uses session_is_registered. Mejor usa isset($_SESSION['nombre_de_vartiable']).

Tercero, si lo que deseas es usar un valor true/false para determinar si el usuario llenó o no el formulario en la sesión actual, entonces no puedes usar isset() ni otras funciones que verifiquen la disponibilidad de una variable, sino que debes realizar una comparación directa:

Código PHP:
if($_SESSION['foo'] == true) { 
  
// algo
           
} else { 
  
// otra cosa
           

Pero la lògica correcta y màs pràctica serìa que una vez llenado el formulario generes una variable de sesiòn (con cualquier valor), y asì, si existe la variable de sesiòn, quiere decir que el usuario ya llenò el formulario y por lo tanto no le muestras el link.

  #8 (permalink)  
Antiguo 16/01/2009, 16:41
(Desactivado)
 
Fecha de Ingreso: diciembre-2008
Mensajes: 421
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Ayuda de sesion

Gracias te hice caso a crear una variable de session al final de llenar el formulario
lo hice asi
session_start();
$_SESSION['datos']=2;

luego en el menu que aparece esta muy bien cuando lleno la ficha solo se llena una vez y cuando vuelvo a el menu me aparece el mensaje de ya lleno este link
Hasta ahi todo esta muy bien gracias pero ahora la gran dudita
cuando vuelvo a entrar al sistemas con el nombre anterior de sesion me aperece de nuevo habilitado el link de llenar la ficha cuando ya lo lleno anteriormente
  #9 (permalink)  
Antiguo 16/01/2009, 21:26
okram
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Ayuda de sesion

Por eso decía que casi estábamos adivinando lo que querías. No fuiste muy explícito que digamos.

En ese caso lo más adecuado sería reemplazar esa variable de sesión (que justamente sirve para una sola sesión) por una columna extra en la base de datos. La misma lógica, le asignas al momento de registrarse un valor por defecto que indique que el usuario no ha llenado el formulario, y cuando lo haga cambias este valor. Realizando una consulta a tu bd y tomando este valor podrás determinar si el usuario llenó o no ese formulario, y por ende, si debes o no mostrarle el link al mismo.

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 15:59.