Foros del Web » Programando para Internet » PHP »

Transmitir el nombre de sesión a través de un header

Estas en el tema de Transmitir el nombre de sesión a través de un header en el foro de PHP en Foros del Web. Tengo una página que recoge los datos de un formulario y los procesa, introduciéndolos en una base de datos. Quiero que esta página redirija a ...
  #1 (permalink)  
Antiguo 12/07/2005, 12:53
Avatar de tognaco  
Fecha de Ingreso: noviembre-2004
Mensajes: 147
Antigüedad: 19 años, 4 meses
Puntos: 1
Transmitir el nombre de sesión a través de un header

Tengo una página que recoge los datos de un formulario y los procesa, introduciéndolos en una base de datos. Quiero que esta página redirija a otra sin pasos intermedios y que aún así transmita las variables de sesión. Lo que tengo hecho es:

Código PHP:
#previamente he recogido las variables

#ahora las inserto en la base de datos
$insercion=mysql_query("INSERT  actividad  
(id_actividad,titulo,actividad,usuario,nivel,asignatura,plantilla,color_fondo_pagina,color_cuadro_texto,color_cuadro_titulo,color_texto_titulo,
color_texto_principal,color_enlaces,color_enlaces_resaltados,font_face,font_size,color_cuadro_esquina,color_cuadro_menu,color_pestana_activa,
color_pestana_inactiva,color_texto_pestana_activa,color_texto_pestana_inactiva, autor, fecha)
VALUES('','$v1','$v2','$v3','$v4','$v5','$v6','$v7','$v8','$v9','$v10','$v11','$v12','$v13','$v14','$v15','$v16','$v17','$v18','$v19','$v20','$v21','$v22','$v23')" 
,$c); 
$_SESSION[id_actividad]=mysql_insert_id();

#una vez insertadas las variables en la tabla redirijo al usuario a la página siguiente

header ("Location: introduccion.php?session_name()=session_id()");
mysql_close($c); 
... pero no me funciona: sí me redirije, pero no transmite el nombre de sesión . ¿Sabéis cómo podría hacerlo? Gracias anticipadas, es importante para mí.

Última edición por tognaco; 13/07/2005 a las 00:56
  #2 (permalink)  
Antiguo 13/07/2005, 00:59
Avatar de tognaco  
Fecha de Ingreso: noviembre-2004
Mensajes: 147
Antigüedad: 19 años, 4 meses
Puntos: 1
... o a lo mejor sabéis de una forma más apropiada de redirigir al usuario a otra página sin usar el header
  #3 (permalink)  
Antiguo 13/07/2005, 01:32
cartucho
Invitado
 
Mensajes: n/a
Puntos:
hombre, estas asignando el session_id al session_name, yo lo pondria asi:
Código PHP:
header ("Location: introduccion.php?nomsesion=session_name()&idsesion=session_id()"); 
y luego recoges los valores $_GET["nomsesion"] y $_GET["idsesion"]

saludos
  #4 (permalink)  
Antiguo 13/07/2005, 01:51
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 20 años, 6 meses
Puntos: 41
session_name() y session_id() son funciones y por tanto deberás ponerlas fuera del contexto de una cadena para que se puedan interpretar.
Código PHP:
header ("Location: introduccion.php?".session_name()."=".session_id()); 
Aunque para pasar la identidad de una sesión por url existe la constante SID:
http://www.php.net/ref.session#session.idpassing
Código PHP:
header ("Location: introduccion.php?".SID); 
Saludos
  #5 (permalink)  
Antiguo 13/07/2005, 02:47
Avatar de tognaco  
Fecha de Ingreso: noviembre-2004
Mensajes: 147
Antigüedad: 19 años, 4 meses
Puntos: 1
Muchas gracias por vuestras respuestas. Ahora sí me funciona .
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 05:08.