¿Cómo hacer que al dar de alta una propiedad ya registrada muestre un mensaje?

Hola. Mi consulta es la sig.:
Tengo una BD con propiedades cargadas. Hice un formulario para hacer ALTAS. A través de él el usuario carga las características del inmueble. Debajo del form hay un botón para confirmar el ALTA. Ahora bien, lo que no sé cómo hacer es que si la propiedad ya está en la BD -cosa que ya pude hacer detectar- muestre un mensaje tipo
Esta propiedad ya se encuentra cargada en la BD.
¿Desea reemplazar los datos anteriores por los nuevos?
SI / NO

Si elige SI, hago el reemplazo y aviso que se hizo el cambio (esto lo sé hacer).
Si elige NO, quiero que vuelva a la pantalla donde estaba el formulario anterior.
Conclusión: lo que está en negrita es en lo que necesito ayuda para resolver mis problemas.
Muchas gracias.
Mariela, Mar del Plata (Argentina)

1 Respuesta

Respuesta
1
Yo los formularios los proceso de la siguiente forma:
Asigno los valores a todas las variables, incluidos los valores de los campos de los formularios
Si (se ha enviado el formulario)
{
Validar formulario;
}
Si (se ha enviado) y (no hay errores)
{
Procesar el formulario;
}
Si No
{
Mostrar formulario;
}
Con este sistema consigues:
1) Si no se ha pulsado el botón enviar se muestra el formulario limpio (o sea, es la primera presentación de formulario)
2) Si el botón enviar ha sido pulsado comprueba los errores:
2.1) Si no hay errores procesa el formulario
2.2) Si hay errores muestra de nuevo el formulario con los mensajes de error pero sin borrar los datos ya introducidos por el usuario.
En tu caso se puede usar por ejemplo este sistema (he usado un código de otro ejemplo pero que es aplicable):
<body>
<?PHP
// Tomamos los valores introducidos en el formulario
$opcion = $_REQUEST['opcion'];
$enviar = $_REQUEST['enviar'];
$error = false;
// Comprobamos si hay algún error
if (isset($enviar)) //Si se ha pulsado el botón de Enviar
{
// Respuestas, debe contestarse a todas
if ($opcion=="")
     {
       $errores["opciones"] = "Debe seleccionar una opción";
       $error = true;
     }
     else
       $errores["opciones"] = "";
   }
// Si los datos son correctos, procesamos formulario y abrimos el que queremos
   if (isset($enviar) && $error==false)
   {
   if ($opcion=="1")
     print ("
<p>Aquí pongo el código de mi formulario 1</p>
");
else
if ($opcion=="2")
{
      print ("
<p>Aquí pongo el código de mi formulario 2</p>
");
?>
                <form id="form6" name="form6" method="post" > 
   <label for="label4">Numero de Parte</label> 
          <input type="text" name="textfield5" id="label4" /> 
             <input type="submit" name="bscr" value="Buscar" id="bscr" /> 
                <?php
}
else
print ("
<p>Aquí pongo el código de mi formulario 3</p>
");
   }
   else // si faltan respuestas mostramos e formulario de nuevo con los errores
   {
?>
<H2>Formulario Principal</H2>
<form method="post">
<p>Agregar: <input type="radio" name="opcion" value="1"> <br />
Modificar:<input type="radio" name="opcion" value="2"> <br />
        Eliminar:<input type="radio" name="opcion" value="3"> <br /> 
<?PHP
if ((isset($enviar)) && ($errores["botones1"]!=""))
print ($errores['botones1']);
?>
    </p>
<p><input type="submit" name="enviar" value="Enviar"></p>
</form>
<?PHP
   }
?>
</body>
Como ves, una vez procesado después de enviar, si los datos ya están en la base le das opción de reemplazar. Si elige Sí procesas el formulario introduciéndolo en la base de datos, si elige No puedes borrar los valores que había introducido o mantenerlos, el formulario inicial se vuelve a mostrar de todas formas sin tener que recargar la pantalla.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas