Foros del Web » Programando para Internet » PHP »

Variables session que funcionan ¿cuando quieren?

Estas en el tema de Variables session que funcionan ¿cuando quieren? en el foro de PHP en Foros del Web. Pues eso, he hecho un registro de usuario usando php y mysql, y una vez el usuario se loguea lo "linkeo" con la pagina de ...
  #1 (permalink)  
Antiguo 14/11/2008, 13:25
 
Fecha de Ingreso: octubre-2008
Mensajes: 64
Antigüedad: 16 años, 1 mes
Puntos: 0
Variables session que funcionan ¿cuando quieren?

Pues eso, he hecho un registro de usuario usando php y mysql, y una vez el usuario se loguea lo "linkeo" con la pagina de inicio.php y a veces me funciona y a veces no :S

Alguien me explica que puede estar pasando?

Aqui el codigo:

Autentificacion.php

Código HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Documento sin t&iacute;tulo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" type="text/css" href="estilos.css">
</head>

<?php session_start(); ?>

<body>
<div id="frame">
<?php

// Conectar a la base de datos
mysql_connect ("localhost","root", "");
mysql_select_db(registro) or die('Cannot select database');

$username=$_POST['username'];
$password=$_POST['password'];
if (($password==NULL) || ($username==NULL)) 
{
	echo "La password y/o el usuario no fueron enviada";
}
else
{
	$query = mysql_query("SELECT nick,password FROM usuarios WHERE nick = '$username'") or die(mysql_error());
	$data = mysql_fetch_array($query);
	if($data['password'] != $password) 
	{
		echo "Login incorrecto";
	}
	else
	{
		$query = mysql_query("SELECT nick,password FROM usuarios WHERE nick = '$username'") or die(mysql_error());
		$row = mysql_fetch_array($query);
		$_SESSION["s_username"] = $row['nick'];
		echo "Has sido logueado correctamente ".$_SESSION['s_username']." y puedes acceder al index.php.";
	}
}
?> 
</div>

</body>
</html> 

Inicio.php:

Código HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Documento sin t&iacute;tulo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" type="text/css" href="estilos.css" >

</head>

<?php session_start();?> 

<body>

<div id="frame">
<p>
		<form name="form1" method="post" action="autentificacion.php">
    	Nombre de usuario: 
    	<input type="text" name="username">
		Contrase&ntilde;a:
		<input type="text" name="password"> 
		<input type="submit" name="Submit" value="Identificarse"> 
 		</form>
<?php
// Conexión a la base de datos
mysql_connect ("localhost", "root", "");
mysql_select_db(registro) or die("Cannot select database"); 
if (isset($_SESSION['s_username'])) 
{	
		echo "Estas logueado";
}
else
{
	echo "No estas logueado";
} 

?>
</p>
</div>
</body>
</html> 
  #2 (permalink)  
Antiguo 14/11/2008, 13:34
Avatar de ACX_POISON  
Fecha de Ingreso: abril-2008
Ubicación: Talca-Chile
Mensajes: 750
Antigüedad: 16 años, 7 meses
Puntos: 7
Respuesta: Variables session que funcionan ¿cuando quieren?

de partida te recomiendo mover la linea

Cita:
<?php session_start();?>
del archivo inicio.php a la primera linea antes de
Cita:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
__________________
Me junto con los que Saben, Queriendo Saber.
  #3 (permalink)  
Antiguo 14/11/2008, 14:16
 
Fecha de Ingreso: octubre-2008
Mensajes: 64
Antigüedad: 16 años, 1 mes
Puntos: 0
Respuesta: Variables session que funcionan ¿cuando quieren?

Muchas gracias, ahora funciona!!

Pense que mientras estuviera fuera del body funcionaria...

Saludos
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 21:46.