Foros del Web » Programando para Internet » PHP »

Problema con sesiones

Estas en el tema de Problema con sesiones en el foro de PHP en Foros del Web. Hola, mi problema es que pierdo las sesiones. Si, hay otro post aquí al lado, pero no me soluciona nada ;) Os comento como lo ...
  #1 (permalink)  
Antiguo 16/05/2007, 12:11
Avatar de kennyhp  
Fecha de Ingreso: julio-2006
Mensajes: 370
Antigüedad: 17 años, 9 meses
Puntos: 5
Problema con sesiones

Hola, mi problema es que pierdo las sesiones. Si, hay otro post aquí al lado, pero no me soluciona nada ;)

Os comento como lo tengo montado.

Tengo la página principal index.php en la que le metos dos includes, el login.php y el módulo que cargo (noticias, articulos, etc...)

index.php

Código PHP:
session_start(); 
require (
"./includes/conexion.php");
conecta(); 
blablabla... chicha de la web
Código PHP:
//cargo el modulo
if(isset($_GET['mod'])){ $modulo=$_GET['mod']; }else{$modulo='portada';}
include 'modulos/'.$modulo.'.php';
//cargo el logeo
<?php include("modulos/login.php"); ?>
en login.php tengo el formulario para loguearse:

Código PHP:
include ("./includes/funciones.php");
if (!isset(
$_SESSION['usuario'])) {
... 
// si no esta logeado carga el formulario para logearse, si lo esta te dice hola.
//no pongo session_start() por que ya lo hago en el index y esto esta en un include, si lo pongo me da error. 
para validar voy a sesiones.php

Código PHP:
if(!empty($_POST['user']) && !empty($_POST['password'])){

    
$usuario=$_POST['user'];
    
$password=$_POST['password'];
    
    
$consultamysql_query("SELECT id_usuario, nick, password FROM usuarios WHERE nick='$usuario' AND password='$password'");
    
    if(
mysql_num_rows($consulta)>0)
    {
        
$fila=mysql_fetch_assoc($consulta);
        
$_SESSION['usuario']=$fila['nick'];
        
$_SESSION['id']=$fila['id_usuario'];
        
header ("Location: ./../index.php"); 
    }
    else 
    {
        echo 
"El usuario introducido no existe o la contraseña no es correcta, por favor comprueba los datos.";
    }
}else echo 
"Has de introducir un usuario y una contraseña.";


ob_end_flush(); 
La cuestión es que funciona, pero cuando recargo index, por ejemplo para cargar otro modulo, osea, hago index.php?mod=noticias pues como el logeo.php esta metido en un include dentro del index tb lo vueve a cargar, pero como el usuario ya esta dado de alta y con la sesion activa deveria salir el mensaje Hola Usuario, pero lo que sale es otra vez el formulario para logearse, por lo que deduzco que por algún motivo no me esta guardando la sesion. Espero haberme explicado
¿por que puede ser?

Un saludo!
  #2 (permalink)  
Antiguo 16/05/2007, 12:22
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 18 años, 10 meses
Puntos: 88
Re: Problema con sesiones

mmm, estoy un poco confundido, no entendí bien, pero creo que lo que debes de tener es algo como esto
Código PHP:
session_start();
//si estan vacias esta variabales
if(empty($_SESSION['usuario']) && empty($_SESSION['id']))
{
//hacer que se loguee
}
else
//de lo contrario
{
echo 
'Hola '.$_SESSION['usuario'];
//y lo demas

espero que esto te de una idea.

saludos.
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #3 (permalink)  
Antiguo 16/05/2007, 12:33
Avatar de kennyhp  
Fecha de Ingreso: julio-2006
Mensajes: 370
Antigüedad: 17 años, 9 meses
Puntos: 5
Re: Problema con sesiones

Si, tengo eso, lo único que lo tengo en distintos ficheros:

index.php

session_start();
include ("login.php");

Y en login.php

if(empty($_SESSION['usuario']) && empty($_SESSION['id']))
{
//hacer que se loguee
}
else//de lo contrario
{
echo 'Hola '.$_SESSION['usuario'];
//y lo demas
}

La primera vez funciona, pero si recargo index, pierde la sesion y me dice que me valide otra vez.
  #4 (permalink)  
Antiguo 16/05/2007, 16:26
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 18 años, 10 meses
Puntos: 88
Re: Problema con sesiones

y en el index, no tendras de casualidad el session_destroy??

creo que tendras que poner mas codigo, no logro entender por donde este el problema.

saludos.
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #5 (permalink)  
Antiguo 17/05/2007, 11:53
Avatar de kennyhp  
Fecha de Ingreso: julio-2006
Mensajes: 370
Antigüedad: 17 años, 9 meses
Puntos: 5
Re: Problema con sesiones

pues no tengo el session_destroy, es que el resto de código es html.

El la cosa es que al recargar la página pierde la sesion.
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 19:19.