Foros del Web » Programando para Internet » PHP » Frameworks y PHP orientado a objetos »

Problemas con las sesiones

Estas en el tema de Problemas con las sesiones en el foro de Frameworks y PHP orientado a objetos en Foros del Web. Buenas tardes, Tengo un problema con sesiones que no puedo resolver: Setrata de un codigo de acceso restringuido y es el siguiente: <?php // incluimos ...
  #1 (permalink)  
Antiguo 04/06/2008, 07:01
 
Fecha de Ingreso: mayo-2008
Ubicación: Canarias
Mensajes: 6
Antigüedad: 16 años
Puntos: 0
Problemas con las sesiones

Buenas tardes, Tengo un problema con sesiones que no puedo resolver: Setrata de un codigo de acceso restringuido y es el siguiente:

<?php

// incluimos aplicaciones
require_once('funciones.php');
session_start();

//crear variables cortas
$nombre = $_POST['nombre'];
$passwd = $_POST['passwd'];

if ($nombre && $passwd)
// intentan logearse
{
try
{
checkactivo($nombre);
}
catch(Exception $e)
{
// no procede
do_html_header('Error');
echo $e->getMessage();
do_html_url('login.php', '<br />Inicio de Sesi&oacute;n<br />');
do_html_footer();
exit;
}
try
{
login($nombre, $passwd);
// if they are in the database register the user id
$_SESSION['nombre_valido'] = $nombre;
}
catch(Exception $e)
{
// unsuccessful login
do_html_header('Error');
echo $e->getMessage();
do_html_url('login.php', '<br />Inicio de Sesi&oacute;n<br />');
do_html_footer();
exit;
}
}

do_html_header('Pagina de Usuarios');
check_valid_user();
do_datos_miembro($_SESSION['nombre_valido']);
do_html_footer();

?>
Hasta aqui todo perfecto, el problema es en el siguiente bloque, cuando llama a do_datos_miembro()
saca los datos perfecto, analiza que hay sesión valida y todo muy bien, el problema es que cuando se vuelve a llamar a la función
check_valid_user(), que ya había validado previamente la sesión dice que no se ha iniciado njingúna sesión, lo mismo pasa cuando intento hacer un logout.. pongo el codigo delas dos y gracias aquien me pueda echar una mano:

function check_valid_user()
// Ver si hay alguien con sesion o notificar lo contrario
{
session_start();
if(isset($_SESSION['nombre_valido']))
{
echo 'Has iniciado sesión como: '.$_SESSION['nombre_valido'].'.';
echo '<br />';
}
else
{
// no han podido entrar
do_html_heading('<br />Error:<br />');
echo '<br />No ha iniciado sesión Ingrese sus datos e intentelo de nuevo<br />';
do_html_url('login.php', '<br />Inicio de Sesión<br />');
do_html_footer();
exit;
}
}


function do_datos_miembro($nombre)
{
require_once('funciones.php');
session_start();

if(!isset($_SESSION['nombre_valido']) && $_SESSION['nombre_valido'] != $nombre){
header("Location: member.php");
}
$conn = db_connect();
$result = $conn->query("select * from usuarios
where nombre='$nombre'");
if (!$result)
{
echo('No ha obtenido resultados, puede ser que no le hayan activado sus servicio <br />Por favor Pongase en contacto, Gracias<br />');
}
if ($result->num_rows>0)
{
$row = $result->fetch_object();
$id = $row->customerid;
}
else
{
echo ('No ha obtenido resultados, puede ser que no le hayan activado sus servicio a&uacute;n<br />Por favor Pongase en contacto<br />');
}
$result = $conn->query("select * from mensajes, protecciondatos, usuarios, video
where mensajes.customerid='$id' and protecciondatos.customerid='$id'
and usuarios.customerid='$id' and video.customerid='$id'");
if (!$result)
{
echo('No ha obtenido resultados, Puede ser que todav&iacute;a no se le activen sus servicios.<br /> Pongase en contacto con nosotros');
}
if ($result->num_rows>0)
{
$row = $result->fetch_object();

?>
// Aqui empiezo a sacar los resultados de la consulta... y la página en general
<div id="content">

...
¿alguna sugerencia?
  #2 (permalink)  
Antiguo 04/06/2008, 07:10
 
Fecha de Ingreso: mayo-2008
Ubicación: Canarias
Mensajes: 6
Antigüedad: 16 años
Puntos: 0
Respuesta: Problemas con las sesiones

Bueno también decir que son páginas distintas: el primer bloque corresponde a members.php y el segundo se encuentra en funciones.php, junto con los datos de conexión, etc
  #3 (permalink)  
Antiguo 05/06/2008, 19:31
 
Fecha de Ingreso: mayo-2008
Ubicación: Canarias
Mensajes: 6
Antigüedad: 16 años
Puntos: 0
Respuesta: Problemas con las sesiones

Bueno, lo he resuelto x fin!!! Al final era solo que se solapaban dos variables, fué cambiar el nombre de la sesión y funcionar todo perfecto!!! Puuf!!! no saben q alivio!!!
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 13:54.