Foros del Web » Programando para Internet » PHP »

No almacena las variables en la sesion

Estas en el tema de No almacena las variables en la sesion en el foro de PHP en Foros del Web. llevo ya 3 dias intentando solucionar el problemas de las variables de sesion y no consigo solucionarlo. Vereis tengo una pagina que se conecta a ...
  #1 (permalink)  
Antiguo 28/05/2008, 15:22
 
Fecha de Ingreso: mayo-2008
Mensajes: 4
Antigüedad: 15 años, 10 meses
Puntos: 0
No almacena las variables en la sesion

llevo ya 3 dias intentando solucionar el problemas de las variables de sesion y no consigo solucionarlo.

Vereis tengo una pagina que se conecta a una bd de Mysql con login y pass hasta hay todo correcto desde esta pagina creo una sesion:

<?php
session_start();
function CrearSesion($Usuario)
{
session_name('Mi_Sesion');
$HTTP_SESSION_VARS['Nombre']= $Usuario;
}
?>
tambien esta probado con $_SESSION.
esta es la funcion que llamo cuando la autorizacion de nombre y pass es correcta.
desde esta pagina redirijo a otra y en esa pagina cuando intento acceder al nombre de usuario no me muestra nada como si estubiera vacia:
<?
session_start();
include './php/Funciones.php';
$User=($_GET["Id"]);
$a=Autorizar_Usuario($User);
?>

Function PHP
<?php
session_start();
function Autorizar_Usuario($User)
{
# echo $_SESSION["Nombre"];
if ($_SESSION["Nombre"] <> $User)
{
?>
<script type="text/javascript">
window.location="./index.html";
</script>
<?
}
}
?>
Espero que me ayudeis Gracias por todo de antemano
Se me olvidava las cookies estan activadas

Última edición por firex1976; 28/05/2008 a las 15:28 Razón: Se me olvidava las cookies estan activadas
  #2 (permalink)  
Antiguo 28/05/2008, 15:27
Avatar de deet  
Fecha de Ingreso: mayo-2005
Ubicación: Córdoba - Argentina
Mensajes: 269
Antigüedad: 18 años, 11 meses
Puntos: 1
Respuesta: No almacena las variables en la sesion

falta que le pongas el nombre de la session en cada archivo php antes de llamar a session_start()

<?
session_name('misesion');
session_start();
?>
  #3 (permalink)  
Antiguo 28/05/2008, 15:50
 
Fecha de Ingreso: mayo-2008
Mensajes: 4
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: No almacena las variables en la sesion

Muchas gracias por tu rapidez al contestar lo he probado y no funciona.


conect.php
<?php
function CrearSesion($Usuario)
{
session_name('misesion');
session_start();
$HTTP_SESSION_VARS['Nombre']= $Usuario;
}
?>
principal.php
<?
session_name('misesion');
session_start();
include './php/Funciones.php';
$User=($_GET["Id"]);
$a=Autorizar_Usuario($User);
?>
Funciones.php
<?php
session_name('misesion');
session_start();
function Autorizar_Usuario($User)
{
if ($_SESSION["Nombre"] <> $User)
{
?>
<script type="text/javascript">
window.location="./index.html";
</script>
<?
}
}
?>

este es el condigo y como lo he puesto. por si acaso es ya toy mu agobiao tiene que ser una tonteria pero no la veo
  #4 (permalink)  
Antiguo 28/05/2008, 15:53
Avatar de eft0  
Fecha de Ingreso: junio-2003
Ubicación: Santiago - Chile
Mensajes: 635
Antigüedad: 20 años, 10 meses
Puntos: 9
Respuesta: No almacena las variables en la sesion

Deja session_start(); dentro de la funcion CrearSesion()
__________________
eft0's stuff! - http://estebanfernandez.net
  #5 (permalink)  
Antiguo 28/05/2008, 16:00
 
Fecha de Ingreso: mayo-2008
Mensajes: 4
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: No almacena las variables en la sesion

Supongo que te refieres a la funcion Autorizar_Usuario dentro del fichero funciones es el unico que esta fuera los demas estan dentro, esto son los cambios que he realizado en el fichero funciones.php
<?php
function Autorizar_Usuario($User)
{
session_name('misesion');
session_start();
echo $HTTP_SESSION_VARS['Nombre'];
if ($HTTP_SESSION_VARS['Nombre'] <> $User)
{
?>
<script type="text/javascript">
window.location="./index.html";
</script>
<?
}
}
?>
Un Saludo
  #6 (permalink)  
Antiguo 28/05/2008, 16:09
Avatar de eft0  
Fecha de Ingreso: junio-2003
Ubicación: Santiago - Chile
Mensajes: 635
Antigüedad: 20 años, 10 meses
Puntos: 9
Respuesta: No almacena las variables en la sesion

session_start() siempre al inicio. Si creas session dentro de una funcion, session_start() debe estar en la primera linea *dentro*de la funcion.
__________________
eft0's stuff! - http://estebanfernandez.net
  #7 (permalink)  
Antiguo 28/05/2008, 16:26
 
Fecha de Ingreso: mayo-2008
Mensajes: 4
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: No almacena las variables en la sesion

En la primera linea dentro de la funcion supongo que sera asi, pero na de na de na sigue =
Funciones.php
<?php
function Autorizar_Usuario($User)
{
session_start();
session_name('misesion');
echo $HTTP_SESSION_VARS['Nombre'];
exit;
if ($HTTP_SESSION_VARS['Nombre'] <> $User)
{
?>
<script type="text/javascript">
window.location="./index.html";
</script>
<?
}
}
?>
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 23:33.