Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] sesiones se cierran al actualizar la pagina

Estas en el tema de sesiones se cierran al actualizar la pagina en el foro de PHP en Foros del Web. Amigos tengo este problema que no logro entender. Estoy creando un login y pues bien para iniciar session realiza medinate ajax un procesamieto y si ...
  #1 (permalink)  
Antiguo 18/03/2015, 11:56
 
Fecha de Ingreso: octubre-2014
Ubicación: Cancun
Mensajes: 80
Antigüedad: 9 años, 6 meses
Puntos: 4
sesiones se cierran al actualizar la pagina

Amigos tengo este problema que no logro entender.

Estoy creando un login y pues bien para iniciar session realiza medinate ajax un procesamieto y si todo esta bien crea variables se sesion y redirecciona

es decir

mipagina.com

si el usuario y contraseña son correctas

mipagina.com/cuenta/nombre_user

en la pagina de cuenta en primera instancia muestra los datos del usuario logeado. PERO si actualizo la pagina se pierden las varibles de sesion.

y no logro comprender esto.

en el scrip que procesa los datos creo las sessiones:

session_start();
$_SESSION['start'] = "yes";
$_SESSION['id_user'] = $row['id_user'];
$_SESSION['usuario'] = $row['nombre'];

y se supone que en la de cuenta con solo poner:
session_start();

puedo usar las variables creadas es decir --> $_SESSION['id_user']

pero al actualizarlo se elimina automaticamente no logro entender la razon.
__________________
Inmobiliairia en cancun
  #2 (permalink)  
Antiguo 18/03/2015, 12:01
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: sesiones se cierran al actualizar la pagina

Es complicado adivinar sin conocer exactamente tu código, además puede que sea un tema de configuración también ¿cómo podríamos saber?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 18/03/2015, 12:04
 
Fecha de Ingreso: octubre-2014
Ubicación: Cancun
Mensajes: 80
Antigüedad: 9 años, 6 meses
Puntos: 4
Respuesta: sesiones se cierran al actualizar la pagina

Cita:
Iniciado por pateketrueke Ver Mensaje
Es complicado adivinar sin conocer exactamente tu código, además puede que sea un tema de configuración también ¿cómo podríamos saber?
este es el codigo del index.

<?php
session_start();
if(isset($_SESSION['recordar'])){
$enlacenombre = str_replace(' ', '-',$_SESSION['usuario']);
echo '
<script type="text/javascript">
window.location="http://acumulandokilometros.com/cuenta.php/'.$enlacenombre.'";
</script>';
}

else {
session_destroy();
?>
<div class="start">
<h2>Entrar</h2>
<div id="resultado" style="display:none"></div>
<form id="start">
<div class="item">
<input id="user" type="text" name="user" placeholder="Correo">
</div>
<div class="item">
<input id="pass" type="password" name="pass" placeholder="Password">
</div>
<div class="item" style="margin-bottom:0;">
<input type="checkbox" id="recordar" value="si" /> <label style="color:#62bcde;">Recordar</label>
<a href="">¿Olvidastes tu contraseña?</a>
</div>
<div class="item" style="text-align:center">
<a class="register" href="<?php echo Host; ?>?register=newuser">Eres Nuevo Registrate Aqui</a>
</div>
<div class="item">
<input id="session" type="submit" name="send" value="Entrar">
</div>
</form>
</div>
<?php } ?>

codigo del scrip que lo procesa.

<?php
//requerimos la conexion a la base de datos
require_once "basedatos.php";
//incluimos la base de datos y creamos el objeto
$conexion = new base();
$user=$_POST['user'];
$pass=md5($_POST['pass']);
$recordar = $_POST['recordar'];

$conexion->conectar();
$consulta = mysql_query("SELECT * FROM Usuario WHERE correo='".$user."' and pass ='".$pass."' ");
$resultado = mysql_num_rows($consulta);

if($resultado==0){
echo "<p>Usuario o Contraseña Incorrecta</p>";
}

else
{
$row= mysql_fetch_array($consulta);
session_start();
$_SESSION['start'] = "yes";
$_SESSION['id_user'] = $row['id_user'];
$_SESSION['usuario'] = $row['nombre'];

$enlacenombre = str_replace(' ', '-',$_SESSION['usuario']);

if($recordar=="yes")
{
$_SESSION['recordar'] = "yes";
echo '
<script type="text/javascript">
window.location="http://acumulandokilometros.com/cuenta.php/'.$enlacenombre.'";
</script>
';
//echo $_SESSION['recordar'];

}
echo '
<script type="text/javascript">
window.location="http://acumulandokilometros.com/cuenta.php/'.$enlacenombre.'";
</script>
';
}
mysql_close($conexion);

codigo de la pagina de cuenta.


<?php include "header.php"; ?>
<?php session_start(); ?>
<body>
<div class="total fondo">
<div class="container">
<div class="photo"></div>
<div class="user"><h3><?php echo $_SESSION['usuario']. " ".$_SESSION['start']; ?></h3></div>
<div class="close"><a href="<?php echo Host; ?>includes/destroy.php">Cerra</a></div>
</div>
</div>

<div class="total">
<div class="container fondo2">

<?php include "vista/addcompetencia.php"; ?>

<div id="lista">
<?php include "includes/listar-bit.php";
$listar= new listar_bit();
$listar->bitacorra($_SESSION['id_user']);?>
</div>

</div>
</div>
<?php /*
else {

echo "hola esto es la session ".$_SESSION['start']. " " .$_SESSION['usuario'];
/*echo '
<script type="text/javascript">
window.location="http://acumulandokilometros.com/";
</script>';*/
//} */?>

</body>
</html>
__________________
Inmobiliairia en cancun
  #4 (permalink)  
Antiguo 18/03/2015, 12:10
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: sesiones se cierran al actualizar la pagina

Recuerda que la primer linea de todos los scripts que usen la sesión deben iniciar session_start(), pero por lo que muestras no lo haces bien.

Cita:
<?php include "header.php"; ?>
<?php session_start(); ?>
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 18/03/2015, 12:15
 
Fecha de Ingreso: octubre-2014
Ubicación: Cancun
Mensajes: 80
Antigüedad: 9 años, 6 meses
Puntos: 4
Respuesta: sesiones se cierran al actualizar la pagina

Cita:
Iniciado por pateketrueke Ver Mensaje
Recuerda que la primer linea de todos los scripts que usen la sesión deben iniciar session_start(), pero por lo que muestras no lo haces bien.

Quieres decir que lsession_start() va siempre de primero, por cierto otro piunto mira si seleciono recordar contraseña no pasa eso de que se "pierda" al actualizar, solamente pasa si no se acepta.

pero com ves el codigo no tengo "una condicion que evalue si la variable se usa"



__________________
Inmobiliairia en cancun

Etiquetas: sesiones, variable
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 09:55.