Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/11/2017, 02:56
unexes
 
Fecha de Ingreso: enero-2011
Ubicación: España
Mensajes: 222
Antigüedad: 13 años, 3 meses
Puntos: 7
Mantener abierta la ventana modal al enviar un formulario

Hola a tod@s..
Espero que me podáis ayudar en un problemilla que me lleva de cabeza y no encuentro la forma de solucionarlo.
Veréis tengo un formulario de contacto que esta en una página y funciona perfectamente y ahora necesito ponerlo por cuestiones de diseño dentro de una ventana modal.
En dicha ventana he colocado un botón de cierre y la misma se cierra correctamente tanto si pulso dicho botón como si pulso fuera de ella y eso es correcto en su funcionamiento
Mi problema es que cuando coloco dentro de dicha ventana el formulario de contacto si se pulsa el botón de ENVIAR del formulario se cierra la ventana, independientemente de si se han rellenado todos los campos de dicho formulario o no, y necesito que la ventana permanezca abierta hasta que el usuario decida cerrarla con el botón de cierre de la misma o pulse fuera de la ventana modal, porque al pulsar sobre el botón de ENVIAR del formulario el usuario recibe en el mismo formulario una información de si el campo esta correctamente o esta vació y permite al usuario modificar el contenido del campo y volver a intentar el envio de nuevo, al mismo tiempo si todo esta correcto le informa de que se ha enviado el correo.
El código que tengo es el siguiente he reducido los campos del formulario a uno para que el código sea menos extenso y mas comprensible, si necesitáis alguna otra información o alguna otra parte del código me lo indicáis y lo colocare.
Espero que me podáis ayudar.

Menu.php
Código:
	<script>
	$(function() {
	    $('#contacto').on('click', function () {
	        $.fn.custombox( this, {
	            effect: 'newspaper'
	        });
	        return false;
	    });
	});
	</script>
<body>
    <div id="MenContacto"><a href="#modalcontacto" id="contacto"><img src="../Imagenes/ImgMenus/MenCont1.png" onmouseover="this.src='../Imagenes/ImgMenus/MenCont2.png';" onmouseout="this.src='../Imagenes/ImgMenus/MenCont1.png';" alt=""/></a></div>
    
    <div id="modalcontacto" style="display: none;" class="modal-prodserv-content">
        <?php (require_once ("Contenido_Menu_Contacto.php")); ?>
    </div>
</body>
Contenido_Menu_Contacto.php
Código:
<body>
<div class="modal-prodserv-header">
    <div class="BotonCierre">
        <img onClick="$.fn.custombox('close');" src="Imagenes/ImgMenus/BotCerrar1.png" onmouseover="this.src='Imagenes/ImgMenus/BotCerrar2.png';" onmouseout="this.src='Imagenes/ImgMenus/BotCerrar1.png';" alt=""/></img>
    </div>
</div>

  <div class="modal-prodserv-body">
      <div id="Contacto">
          <div id="Formulario">
            <?php
                 $nombre     = '';
            if(isset($_POST['enviar']))
            {
                 $nombre     = $_POST['nombre'];
                if(trim($nombre) == '')
                {
                    $error = '<div class="mensusuario">Por favor escriba su nombre!</div>';
                }
             
                if($error == '')
                {
                    if(get_magic_quotes_gpc())
                    {
                        $mensaje = stripslashes($mensaje);
                    }

                    $to      = "[email protected]";
                    $asunto = '[bla, bla, etc...] : ' . $asunto;
                    $msg     = "De: $nombre \r\n";

                    mail($to, $asunto, $msg, "From: $email\r\nReply-To: $email\r\nReturn-Path: $email\r\n");
            ?>
    <div id="Respuesta">                  
      <h1>Correo enviado</h1>
         <p>Gracias <b><?=$nombre;?></b>, nos pondremos en contacto con Vd. lo antes posible!</p>
         <p align="center"><a href="index.php"><img border="0" src="images/Estrella.gif" width="10" height="7" />&nbsp;&nbsp;&nbsp;Volver a INICIO&nbsp;&nbsp;&nbsp;<img border="0" src="images/Estrella.gif" width="10" height="7" /></a></p>                 
    </div>
<?php
        }
    }

    if(!isset($_POST['enviar']) || $error != '')
    {
?>
      <div id="MensajeError"><?=$error;?></div>
        <form action="" method="Post" name="Form1" id="Form1">
            <div id="LabelNombre" class="cabeceras">Nombre:</div>
                <div id="ContNombre"><input name="nombre" class="Contenido" type="text" id="nombre" size="43" value="<?=$nombre;?>" /></div>

  <!-- AQUI ESTA EL BOTON ENVIAR QUE NO QUIERO QUE CIERRE EL MODAL -->
  <div id="BotEnviar"><input name="enviar" type="submit" class="button" id="enviar" value="" /></div>
        </form>
          </div>
      </div>           
  </div>
</body>
perdonad si al copiar y pegar hay alguna parte del formulario con algún error, pero ya os comento al principio que el mismo funciona correctamente.
Gracias por vuestro interés y ayuda.
__________________
¿Hay algo mas hermoso que ayudar.?