Bueno el error está en autentifiación:
en lugar de dejar el codigo PHP anidado lo dejas por separado me explico:
autentifcicion11.php (El original)
Código PHP:
<html>
<head>
<title>Comprobar variable formulario y poner valores resto usando variables de sesion</title>
</head>
<body>
<form action="autentificacion11b.php" method="post">
Escriba su nombre (Solo letras A-z,a-z, numeros 0-9):
<input type="text" name="nombre">
<br>
Escriba su correo electrónico:
<input type="text" name="mail"><br>
Escriba su contraseña (Solo letras A-z,a-z, numeros 0-9):
<input type="text" name="contrasena" size="8" value="
<?php
session_start();
if(isset($_SESSION['contrasena'])){
if(!empty($_SESSION['contrasena'])){
echo trim($_SESSION['contrasena']);
unset($_SESSION['contrasena']);
}
}
?>"
>
<br>
<input type="submit" value="Registrar">
</form>
</body>
</html>
Debe quedarte así autentificacion11.php (OJO: Esta Modificado)
Código PHP:
<html>
<head>
<title>Comprobar variable formulario y poner valores resto usando variables de sesion</title>
</head>
<body>
<form name="form1" action="" method="post">
Escriba su nombre (Solo letras A-z,a-z, numeros 0-9):
<input type="text" name="nombre" value ="<?php if(isset($_SESSION['nombre'])) echo $_SESSION['nombre']; ?>" />
<br />
Escriba su correo electrónico:
<input type="text" name="mail" value ="<?php if(isset($_SESSION['mail'])) echo $_SESSION['mail']; ?> "><br>
Escriba su contraseña (Solo letras A-z,a-z, numeros 0-9):
<input type="password" name="contrasena" size="8" value="<?php session_start(); if(isset($_SESSION['contrasena'])){if(!empty($_SESSION['contrasena'])){echo trim($_SESSION['contrasena']); unset($_SESSION['contrasena']);}}?>" />
<br>
<input type="submit" value="Registrar">
</form>
</body>
</html>
Y se te quitará el espacio en azul, explicación: en Value="" cuando uno escribe una palabra por ejemplo
Código HTML:
<input type="TEXT" name="Ejemplo" VALUE="Hola " />
y dejamos 5 espacios en blanco en el INPUT (Caja de texto de entrada de datos) al darle click al INPUT pondra por defecto 5 espacios en blanco por el comando VALUE(Evaluar, Poner Cadena predeterminada, o como lo quieras llamar)
y si hacemos lo mismo
Código HTML:
<input type="TEXT" name="Ejemplo" VALUE=" " />
pero sin Hola al darle click al INPUT por defecto traera los 5 espacios en blanco. Prueba para que veas el error, y si tienes alguna duda, envia otro mensaje en el mismo tema que creaste