Porque una vez que mandás el formulario ya está, si se vuelve a cargar es uno nuevo por más que el submit lo haga en la misma página, no reconoce que esas variables post son valores de ese formulario. No sé bien como explicarlo, espero que haya alguno más docente que yo.
Lo que tenés que hacer es, si hay un error, guardar esas variables para después llenarlas en el formulario. Para no hacerlo en cada if por ahi habría que cambiar un poco el código.
Código PHP:
Ver original<?
$error = false;
if (($user)==NULL || ($user)==' ')
{
$error = true;
$mensaje = 'Disculpe, el Campo Usuario no puede estar en Blanco, Por favor Vuelva a intentarlo.';
}
else if (($password)==NULL || ($password)==' ')
{
$error = true;
$mensaje ='Disculpe, el Campo Contraseña no puede estar en Blanco, Por favor Vuelva a intentarlo.';
}
//
// Verifica todo...
//
if ($error)
{
$_SESSION['form']['user'] = $user;
$_SESSION['form']['pass'] = $password;
//etc...
print "<script>alert('$mensaje')</script>";
print("<script>window.location.replace('RegistarUsuarios.php');</script>");
}
?>
Y en el formulario pondrías
Código HTML:
Ver original <td align="left">Usuario:
</td> <td align="center"><input type="text" name="user" size="25" value="<?= $_SESSION['form']['user'] ?>" />
</td>
Y ahi si se llenaria los campos con lo que llenó antes.