Foros del Web » Programando para Internet » PHP »

como registrar una variable sesion recibida por POST

Estas en el tema de como registrar una variable sesion recibida por POST en el foro de PHP en Foros del Web. Amigos, tengo un problema, no me resulta como registrar una variable sesion recibida por POST (PHPSESSION=algo). el codigo que hice para esto es: Código PHP: ...
  #1 (permalink)  
Antiguo 09/06/2004, 16:15
 
Fecha de Ingreso: junio-2004
Mensajes: 2
Antigüedad: 13 años, 6 meses
Puntos: 0
como registrar una variable sesion recibida por POST

Amigos,
tengo un problema, no me resulta como registrar una variable sesion recibida por POST (PHPSESSION=algo).
el codigo que hice para esto es:
Código PHP:
// valido la sesion 
$session=$_POST["session"]; 
$str=strtok($session,'='); 
while(
$str

$str=strtok('='); 

session_register($str); 
Help!!!.

--

Rodrigo
  #2 (permalink)  
Antiguo 10/06/2004, 00:34
Avatar de xcorpion  
Fecha de Ingreso: octubre-2003
Ubicación: m é x i c o
Mensajes: 676
Antigüedad: 14 años, 2 meses
Puntos: 4
yo en lo personal registro las variables de session asi:

session_start()
$_SESSION["nombre_variable_sesion"] = "valor de la variable de sesion";
  #3 (permalink)  
Antiguo 10/06/2004, 16:45
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Pero .. que pretendes hacer con el código que pusistes?

Ese "PHPSESSION=algo" es el SID de una sesión y lo obtienes por la constante que es: SID o bien de: session_name()."=".session_id() . y si sólo quieres el ID de sesión .. con la función session_id() (y siempre inciando el uso de sesiones con la función session_start() antes de usar alguna de estas funciones o constantes)

Un saludo,
  #4 (permalink)  
Antiguo 11/06/2004, 09:23
 
Fecha de Ingreso: junio-2004
Mensajes: 2
Antigüedad: 13 años, 6 meses
Puntos: 0
Amigos,
Ya encontre la solución al problema, lo que hice es que agregue un campo del tipo "hidden" en el formulario que envio mediante el metodo post, el nombre de este campo es PHPSESSID y el valor esta dado por <? echo session_id() ?> y cuando lo recibo en la pag. de destino al iniciar la sesion (session_start () ) toma el valor de esta variable como el identificador de la sesion y recupera los valores.
Saludos,
  #5 (permalink)  
Antiguo 11/06/2004, 09:51
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Para que el sistema te sea más versatil (por si cambias de servidor o de aplicación que definas nombre de sesión):

Código PHP:
<input type="hidden" name="<? echo session_name() ?>" value="<? echo session_id(); ?>">
Supongo que en tu aplicación estás propagando el SID por el URL .. Pero, eso mismo que estás haciendo lo hace ya PHP por defecto si usas:

session.use_trans_sid = 1
En ese caso (php.ini o ini_set() se puede "forzar") es PHP el que reescribe ciertos tags HTML para añadir el SID (tanto en formularios en campos hidden o en el action como en links y otros tag's HTML de redireción: no lo hace en javacript ni en <meta de refresh o en PHP bajo un header("Location ...") )

Y .. si propagas el SID en cookies (session.use_cookies = 1) es más seguro el uso de cookies y te olvidas de propagar manualmente el SID (pero obliga a usar navegadores con cookies activas).

Un saludo,


Un saludo,
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 17:32.