Gracias a todos por vuestra ayuda. Al final lo he dejado así, y me funciona (por si a alguien le interesa usarlo o mejorarlo):
Archivo que recoge los datos del formulario:
Código PHP:
<?
include("config.php");
$nick = $_POST['nick'];
$pass = $_POST['pass'];
//Sentencia SQL para buscar un usuario con esos datos
$ssql = "SELECT * FROM usuarios WHERE nick='$nick' and pass='$pass'";
//Ejecuto la sentencia
$rs = mysql_query($ssql,$link);
//vemos si el usuario y contraseña es váildo
//si la ejecución de la sentencia SQL nos da algún resultado
//es que si que existe esa conbinación usuario/contraseña
if (mysql_num_rows($rs)!=0){
//usuario y contraseña válidos
//defino una sesion y guardo datos
session_start();
session_register('nick');
echo "Login realizado con exito. Será redireccionado a la zona privada.";
?>
<script type="text/javascript">
var pagina = 'entrada.php';
var segundos = 5000;
function redireccion() {
document.location.href=pagina;
}
setTimeout("redireccion()",segundos);
</script>
<?
}else {
//si no existe le mando otra vez a la portada
echo "Datos incorrectos. Inténtelo de nuevo.";
?>
<script type="text/javascript">
var pagina = 'login.php';
var segundos = 5000;
function redireccion() {
document.location.href=pagina;
}
setTimeout("redireccion()",segundos);
</script>
<?
}
mysql_free_result($rs);
mysql_close($link);
?>
Archivo que valida los datos y que debemos poner en un include al inicio de las páginas privadas:
Código PHP:
<?
//COMPRUEBA QUE EL USUARIO ESTA AUTENTIFICADO
session_start();
if (!session_is_registered('nick')){
}
else{
//si no existe, envio a la página de autentificacion
header("Location: login.php");
//ademas salgo de este script
exit();
}
?>