Foros del Web » Programando para Internet » PHP »

Problema por las sesiones

Estas en el tema de Problema por las sesiones en el foro de PHP en Foros del Web. Holas a todos: He desarrollado un sistema web economico financiero para la empresa donde trabajo, hasta el momento todo funciona muy bien, pero ahora estoy ...
  #1 (permalink)  
Antiguo 09/03/2004, 19:00
 
Fecha de Ingreso: marzo-2004
Ubicación: Trujillo - Perú
Mensajes: 2
Antigüedad: 20 años, 1 mes
Puntos: 0
Busqueda Problema por las sesiones

Holas a todos:

He desarrollado un sistema web economico financiero para la empresa donde trabajo, hasta el momento todo funciona muy bien, pero ahora estoy tratando de incluir sesiones en todo mi sistema, he incluido un sistema de autenticacion de usuarios y he creado un archivo llamado verificauser.php el cual lo coloco al inicio de todas mis paginas, este archivo comprueba el usuario de la sesion iniciada. Si es correcto no hace nada y sino lo manda a la pagina de ingreso de usuarios.

Bueno hasta alli todo bien, pero mi problema es que en varias partes de mi sistema tengo que abrir ventanas secundarias tipo Popups enviandole algunas variables, y lo hago con javcascript pero ahora no funciona!!!.

abrepagina.php <-----pagina que abre la ventana secundaria o nueva
ventana.php <---pagina que debe aparecer en la nueva ventana

codigo de pagina abrepagina.php , sin sesiones este codigo funcionaba bien:
<script language="Javascript>
window.open("ventana.php?<? echo $valor; ?>","window","height=300 width=300");
</script>

Agregandole la parte de sesiones!!!
<? require ("verificauser.php ?> script colocado en todas mis paginas (ventana.php y abrepagina.php).

Ahora no me funciona el JavaScript, en algunos casos me funciona bien haber cambiado window.open por parent.nombreframe.location.href="pagina2.php" (pero es para abrir paginas en un frame y no en una ventana nueva!!!)

Espero que alguien pueda ayudarme!!!
  #2 (permalink)  
Antiguo 10/03/2004, 05:21
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
El SID (Identificador Único de Sesión) se puede propagar de várias formas ...

No indicas como propagas el SID .. lo más probable que asumas que PHP lo va hacer por tí.

Cundo PHP propaga el SID en modo automático, lo puede hacer de dos formas:

Por cookies
Reescribiendo ciertos Tag's HTML para añadir el SID en ellos.

(ver php.ini)

Si usas session.use_cookies = 1 .. PHP propagará el SID en cookies, lo cual te dará la comodidad de no estar preocupandote por como o donde propagar el SID. Esto requiere a su vez de navegadores que acepten cookies (y que no sean bloqueadas por antivirus con firewall, proxys o sistemas similares).

Si usas session.use_trans_sid PHP intentará reescribir ciertos tag's HTML como el de link (<a ...>) o formularios (creando un campo hidden extra) y algunos más para añadir el SID. Esto no requiere de un navegador con cookies activadas.

El "problema" es que PHP en modo "session.use_trans_sid" NO inserta el SID automáticamente en redireccionamientos javascript (ya sea abrir una ventana o redireccionar) .. tampoco en redireccionamientos tipo <meta .. > de refresh ...

En resumen .. para tu caso particular .. o propagas el SID a mano al abrir esa ventana (SID es una constante...) o bien usas session.use_cookies y te aseguras que tus navegadores aceptan cookies.

Código PHP:
window.open("ventana.php?<? echo "variable=".$valor.SID?>","window","height=300 width=300");
(SID es la constante .. puedes obtenerla también: session_name()."=".session_id() )

Mas info:
www.php.net/session

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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:32.