Esto esta mal, tu sentencia SQL es errónea.
Tienes indicado a la mysql que busque en la tabla AUTORIZA, pero no le dices el que, es decir, tu le dices que busque, el, de por si, coje el primero, y ya esta, como debe crear un array, solo coje uno, eso por no enseñarte un error...
y que debes hacer?
pues, cambiar tu query y hacerlo "condicional", es decir que funcione según los datos de tu formulario.
Código PHP:
$usuario = $_POST['usuario'];
$password= $_POST['contrasena'];
$query = mysql_query("SELECT * FROM autoriza WHERE usuario='$usuario' AND password='$password'", $conexion) or die("Invalid Query");
//Sigo con más modificaciones:
if($array = mysql_fetch_array($query)){
session_start();
session_register("autentificado");
$_SESSION['autentificado'] = "SI";
session_register("usuario");
$_SESSION['usuario'] = $array("usuario");
session_register("pass");
$_SESSION['pass'] = $array("password");
//Aquí tienes un monton de sessiones MINIMAS para tu sistema.
header ("Location: aplicacion.php");
}else{
header("Location: index.php?errorusuario=si");
}
Voy a explicarte un poco las desventajas de tu sistema anterior:
1. Podias entrar sin usuario ni clave correctas, compruebalo...
2. Estabas autentificado, lo indicaba una session ( que no estaba definida correctamente), pero cuál era tu user? y tu pass?
3. No comprobaba de la forma mas optima, si el user y pass eran correctos, pero funcionaba...
Bueno, espero que este mini-code te haya servido...
BYE!
Entonces ejecutara la condicion de los usuarios.