Hola de nuevo:
He conseguido discriminar de donde viene el error, el problema es que no sé como solucionarlo.
Lo que pasa es que cuando introduzco la identificación en el form de login me abre la página "dentro" de la pagina que comprueba los datos y me da errores de sesión distintos.
Cuando utilizo header (header("location:../Prueba_MantWeb.php");) da este error:
Cita: Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\recor\LoginDB.php:1) in QueC:\xampp\htdocs\login\checklogin.php on line 53
Que coincide con la línea del header y no me habre la página
Sin embargo si utilizo include (include('../Prueba_MantWeb.php');), me da este otro error:
Cita: Notice: A session had already been started - ignoring session_start() in C:\xampp\htdocs\Prueba_MantWeb.php on line 1
Y me abre la página dentro de la anterior por seo me dice que la sesion ya ha sido comenzada.
Creo que la solución va por abrir la página en una página nueva pero no encuentro la forma.
De nuevo el códigodel problema por si alguien ve lo que no veo yo
Código PHP:
<?php session_start ();
//registro las variables de sesion
session_register ($usuario, $clave);
error_reporting(E_ALL);
ini_set("display_errors", 1);
// Llamo las variables de conexión a DB
require_once ('../recor/LoginDB.php');
// Nombre de la tabla
$tbl_name="personas";
// Defino $usuario y $clave
$usuario=$_POST['usuario'];
if (empty ($_POST['usuario'])) {echo "<script type=\"text/javascript\">alert(\"ERROR: Pon un usuario\");
window.history.back();
</script>";
exit;
};
$clave=$_POST['clave'];
if (empty ($_POST['clave'])) {echo "<script type=\"text/javascript\">alert(\"ERROR: Pon la clave\");
window.history.back();
</script>";
exit;
};
// Protejo frente a MYSQL injection
$usuario = stripslashes($usuario);
$clave = stripslashes($clave);
// Abro conexión y selecciono la base de datos
$connection = mysql_connect($host, $user, $pass) or die ("Unable to connect!");
mysql_select_db($db) or die ("Unable to select database!");
//Construyo la select
$sql="SELECT * FROM $tbl_name WHERE usuario='$usuario' and clave='$clave'";
$result=mysql_query($sql);
// Cuento las filas de la tabla
$count=mysql_num_rows($result);
// Si $usuario y $clave coinciden, tiene que haber una fila
if($count==1){
// Registro $usuario, $clave y redirijo a la página de destino
$_SESSION['usuario'] = $usuario;
$_SESSION['clave'] = $clave;
//header("location:../Prueba_MantWeb.php");
include('../Prueba_MantWeb.php');
}
else {
echo "<script type=\"text/javascript\">alert(\"ERROR usuario o clave\");
window.history.back();
</script>";
exit;
}
?>
¿Alguien sabe como solucionarlo?
Se agradecerá la solución con una cantidad inmensa de Karma
J.