Ver Mensaje Individual
  #1 (permalink)  
Antiguo 09/11/2014, 12:30
melkart239
 
Fecha de Ingreso: noviembre-2014
Ubicación: Madrid
Mensajes: 81
Antigüedad: 9 años, 5 meses
Puntos: 1
Login que envía a página en blanco

Ya he mirado otras consultas sobre este mismo problema, pero ninguna me resulta de ayuda.
Se trata de una página con un formulario login que reenvía a una php que comprueba los datos con la base de datos y permite o no seguir.
Al darle a enviar va a la página comprobadora y se queda en blanco.

localhost: MAMP
base de datos: fcts
tabla: profes
con los campos:
Nombre_Profe
Pass_Profe
el formulario login tiene los campos de texto:
nome_us
pass_us
Cuando pulsas sobre el botón enviar te envía a "validar_usuario.php"

Que tiene este código:

Código:
<title>Documento sin título</title>
</head>

<body>
<?php
/****************************************
**establecemos conexion con el servidor.

**Si la conexion fallara mandamos un msj 'ha fallado la conexion'**/
mysql_connect('localhost:8889','root','root')or die ('Ha fallado la conexión: '.mysql_error());

/*Luego hacemos la conexión a la base de datos. 
**De igual manera mandamos un msj si hay algun error*/
mysql_select_db('fcts')or die ('Error al seleccionar la Base de Datos: '.mysql_error());
 
/*capturamos nuestros datos que fueron enviados desde el formulario mediante el metodo POST
**y los almacenamos en variables.*/
$usuario = $_POST["nome_us"];   
$password = $_POST["pass_us"];

/*Consulta de mysql con la que indicamos que necesitamos que seleccione
**solo los campos que tenga como Nombre_Profe el que el formulario
**le ha enviado*/
$result = mysql_query("SELECT * FROM profes WHERE Nombre_Profe = '$usuario'");

//Validamos si el nombre del profe existe en la base de datos o es correcto
if($row = mysql_fetch_array($result))
{     
//Si el usuario es correcto ahora validamos su contraseña
 if($row["Pass_Profe"] == $password)
 {
  //Creamos sesión
  session_start();  
  //Almacenamos el nombre de usuario en una variable de sesión usuario
  $_SESSION['usuario'] = $usuario;  
  //Redireccionamos a la pagina: pral.html
  header("Location: pral.html");  
 }
 else
 {
  //En caso que la contraseña sea incorrecta enviamos un msj y redireccionamos a login.php
  ?>
   <script languaje="javascript">
    alert("Contraseña Incorrecta");
    location.href = "login.html";
   </script>
  <?
            
 }
}
else
{
 //en caso que el nombre de administrador es incorrecto enviamos un msj y redireccionamos a login.php
?>
 <script languaje="javascript">
  alert("El nombre de usuario es incorrecto!");
  location.href = "login.html";
 </script>
<?   
        
}

//Mysql_free_result() se usa para liberar la memoria empleada al realizar una consulta
mysql_free_result($result);

/*Mysql_close() se usa para cerrar la conexión a la Base de datos y es 
**necesario hacerlo para no sobrecargar al servidor, bueno en el caso de
**programar una aplicación que tendrá muchas visitas ;) .*/
//mysql_close();
?>
</body>
</html>
Cuando introduzco nombres o pass erróneos funcionan los mensajes pero cuando introduzco datos correctos se queda en la página validar y no redirige a la pral.html.
También he probado a cambiar a pral.php. Tampoco.
También he probado a poner siempre detrás de <? el php- Tampoco.

En fin, perdón por el ladrillo y espero que algún alma caritativa me saque de este atasco. Gracias anticipadas.