Ver Mensaje Individual
  #10 (permalink)  
Antiguo 10/09/2007, 01:20
Doom_Lady
 
Fecha de Ingreso: junio-2007
Mensajes: 37
Antigüedad: 16 años, 10 meses
Puntos: 0
Re: problema con headers al hacer log-in para php5

he probado con esto del ob_start() antes de session_start() y ob_flush() después de header location, eliminando el echo $pass

el código me ha quedado de la siguiente manera:

Código:
<? ob_start(); 
session_start();
$login=trim($_POST['login']);
$pass=trim($_POST['pass']);
include("conexion.php");
$query="SELECT * FROM tb_usuarios WHERE login='$login'";
//mysql_select_db($database);
$result=mysql_db_query($database,$query,$link);
if(mysql_num_rows($result)==0){
echo"No existe el login introducido<br>";
echo"<a href='index.php'>REGRESAR</a>";} 
else{
$array=mysql_fetch_array($result);
if($array["password"]==crypt($pass,"semilla")){
/* Comprobamos que el password encriptado en la BD coincide con 
el password que nos han dado al encriptarlo. Recuerda usar la misma semilla para encriptar los dos passwords. */
$SESSION["login"]=$login;
$SESSION["nombre"]=$array["nombre"];
$SESSION["apellidos"]=$array["apellidos"];
session_register("SESSION");
header("location:user.php");
ob_flush();}
else{
echo"Password incorrecto!<br>";
echo"<a href='index.php'>REGRESAR</a>";
} /* Cerramos este ultimo else */
} /* Cerramos el else que corresponde a la comprobación de que el login existe */
?>
ya no sale error de headers, pero sigue fallando, porque no va a user.php que es lo que debería hacer, se queda en index.php como si no enviase nada, ni el log-in ni el password ni nada... ¿alguna idea más? ya me estoy volviendo LOCA!

también me han dicho que pruebe con este otro código:

Código:
<? session_start();
$login=trim($_POST['login']);
$pass=trim($_POST['pass']);
echo $pass;
include("conexion.php");
$query="SELECT * FROM tb_usuarios WHERE login='$login'";
//mysql_select_db($database);
$result=mysql_db_query($database,$query,$link);
if(mysql_num_rows($result)==0){
echo"No existe el login introducido<br>";
echo"<a href='index.php'>REGRESAR</a>";}
else{
$array=mysql_fetch_array($result);
if($array["password"]==crypt($pass,"semilla")){
/* Comprobamos que el password encriptado en la BD coincide con
el password que nos han dado al encriptarlo. Recuerda usar la misma semilla para encriptar los dos passwords. */
$SESSION["login"]=$login;
$SESSION["nombre"]=$array["nombre"];
$SESSION["apellidos"]=$array["apellidos"];
session_register("SESSION");
//header("location:user.php");
// Redirección usando Javascript
echo '<script languaje="javascript"> window.location="user.php"; </script>';
}
else{
echo"Password incorrecto!<br>";
echo"<a href='index.php'>REGRESAR</a>";
} /* Cerramos este ultimo else */
} /* Cerramos el else que corresponde a la comprobación de que el login existe */
?>
y en vez de usar el header usar un redireccionamiento javascript, el caso es que me pasa exactamente lo mismo, he cambiado los headeres por redireccionamientos y lo mismo me da, se queda en el index.php como un mongo!!

Última edición por Doom_Lady; 10/09/2007 a las 01:33