Código PHP:
<?php
session_start();
// Para que no se de un ERROR (al coexistir un include / require /require_once con un header location
// es necesario que en el fichero con1.php no exista espacios en blanco.
require_once ('con1.php');
$nombre=$_POST["nombre"];
$clave=$_POST["clave"];
//Ejecutamos la select de las tres tablas para ver si el usuario y clave son correctos.
mysql_select_db ($bd,$cnn1) or die ('No pudo seleccionarse la base de datos');
$consulta="Select id,nombre,clave,nivel from usuario1
where nombre ='$nombre' and clave='$clave'
union
Select id,nombre,clave,nivel from usuario2
where nombre ='$nombre' and clave='$clave'
union
Select id,nombre,clave,nivel from usuario3
where nombre ='$nombre' and clave='$clave'
";
$resultado=mysql_query($consulta,$cnn1) or die (mysql_error());
while($registro=mysql_fetch_array($resultado))
{
$nivel=$registro ['nivel'];
$id_usuario=$registro ['id'];
}
$registrosDevueltos=mysql_num_rows($resultado);
if ($registrosDevueltos) {
session_start();
// Se carga la variable de sesion
// del fichero seguridadGlobal.php
$_SESSION["logged_in"]=TRUE;
$_SESSION['id_usuario']=$id_usuario;
// Se carga el nivel en una variable de sesion
// para poder comprobarlo en accesoAceptado.php y
// accesoAceptado2.php. Asi se evita que un usuario
// pueda pasar de un nivel a otro despues de autentificarse:
$_SESSION["nivel"]=$nivel;
if ($nivel==1) {
// Se carga la pagina accesoAceptado.php
header ("Location:Index1.php");
}
else if ($nivel==2) {
// Se carga la pagina accesoAceptado.php
header ("Location:Index2.php");
}
else if ($nivel==3) {
// Se carga la pagina accesoAceptado.php
header ("Location:Index3.php");
}
}
else {
// Si el usuario y contraseña no existen
// remitimos a inicio.php con un error
// para que muestre el mensaje de error
header("Location:login.php?errorespera==si");
}
?>