Cita:
Iniciado por ivanparron582 Hola Manu:
Lo único que se me ha ocurrido es poner en el value de los input la variable $_POST['nombre del input'] y eso al menos funciona cuando los datos están mal, pero cuando están bien te los sigue guardando.
Creo que te has equivocado con la frase, tú quieres que cuando estén mal no te los guarde, puedes hacerlo de dos formas.
En el value donde pusiste el $_POST[x] hacer alguna comprobación, y que solo lo imprima si está bien.
La otra opción es donde procesas los datos, poner la variable como un string vacío si está mal, por ejemplo:
Código PHP:
Ver original<?php
$nombre = "";
if(isset($_POST['nombre'])){ $nombre = $_POST['nombre'];
if($nombre ... tus comprobaciones ...){
}else{
//Error con nombre
$error['nombre'] = "Introduzca un nombre válido";
$nombre = "";
}
}
?>
...
<form ...>
...
<div class="error">
<?php if(isset($error['nombre'])) echo $error['nombre']; ?></div>
<input name="nombre" value="<?php echo $nombre; ?>" placeholder="Escriba su nombre" />
...
</form>
...
Es una implementación muy básica pero que se adapta a lo que tú buscas.