Ver Mensaje Individual
  #2 (permalink)  
Antiguo 27/10/2014, 14:42
Avatar de herzbazi
herzbazi
 
Fecha de Ingreso: febrero-2012
Mensajes: 612
Antigüedad: 12 años, 9 meses
Puntos: 36
Respuesta: formulario enviado correctamente en la misma pagina del formulario

Cita:
Iniciado por lradriz Ver Mensaje
Hola tengo un formulario en html y php quiero que el mensaje de enviado correctamente me aparezca debajo del boton enviar del mismo formulario, no en otra pagina. Pego aqui los codigos.
Saludos.

Código HTML:
Ver original
  1. <form id="form1" name="form1" method="post" action="enviar.php" >
  2. <p>Nombre y Apellido<br>
  3.   <input name="nombre" type="text" id="nombre" size="50" maxlength="50"  required="" />
  4.   <br />
  5.  
  6.   Telefono<br>
  7.   <input name="telefono" type="text" id="telefono" size="50" maxlength="50"  required="" />
  8.   <br />
  9.   E-mail<br>
  10.   <input name="email" type="text" id="email" size="50" maxlength="100"  required=""/>
  11.   <br />
  12. </p>
  13. <p>Seleccion el area correspondiente</p>
  14. <p>
  15. <select name="Departamento" required="">
  16. <option value="[email protected]" id="Departamento_0" />
  17. Acción Social
  18. <option value="[email protected]" id="Departamento_1" />
  19. Administración
  20. <p> <br />
  21. Mensaje<br>
  22. <textarea name="mensaje" id="mensaje" cols="49" rows="5"  required=""></textarea>
  23. <br />
  24. <br />
  25. <input type="submit" name="enviar" id="enviar" value="Enviar" />
  26. </form>

Código PHP:
Ver original
  1. <?php
  2. if (!isset($_POST['email'])) {
  3. ?>
  4.  <form action="<?=$_SERVER['PHP_SELF']?>" method="post">
  5.    <label>
  6.      Nombre:
  7.      <input name="nombre" type="text" />
  8.    </label>
  9.    <label>
  10.      Teléfono:
  11.      <input name="telefono" type="text" />
  12.    </label>
  13.    <label>
  14.      Email:
  15.      <input name="email" type="text" />
  16.    </label>
  17.    <label>
  18.      Mensaje:
  19.      <textarea name="mensaje" rows="6" cols="50"></textarea>
  20.    </label>
  21.    <input type="reset" value="Borrar" />
  22.    <input type="submit" value="Enviar" />
  23.  </form>
  24. <?php
  25. }else{
  26.  $mensaje="Mensaje del formulario de contacto";
  27.  $mensaje.= "\nNombre: ". $_POST['nombre'];
  28.  $mensaje.= "\nEmail: ".$_POST['email'];
  29.  $mensaje.= "\nTelefono: ". $_POST['telefono'];
  30.  $mensaje.= "\nMensaje: \n".$_POST['mensaje'];
  31.  $email = $_POST['Departamento'];
  32. mail($email, $subject, $mensaje, "FROM: Mensaje desde la web<[email protected]>\n");
  33.  $remitente = $_POST['email'];
  34.  $asunto = "Mensaje enviado por: ".$_POST['nombre'];
  35.  mail($destino,$asunto,$mensaje,"FROM: $remitente");
  36. ?>
  37.  
  38.  <p><strong>Mensaje enviado.</strong></p>
  39. <?php
  40. }
lo que haria yo es lo siguiente

justo abajo de
Código PHP:
Ver original
  1. mail ($destino , etc)

pondria un js para redireccionar a la pagina del formulario pasaria una variable por get

Código Javascript:
Ver original
  1. <script>
  2.                window.location.href = 'contacto.php?m=1';
  3.         </script>

y en el la pagina donde esta el formulario pondría una validación algo así

Código PHP:
Ver original
  1. if(isset($_GET['1'])){
  2.     ?>
  3. <p><strong>Mensaje enviado.</strong></p>
  4.     <?php
  5. }

ya con CSS le doy posición y estilo al texto

espero haberte ayudado.
__________________
Enseña todo lo que sepas...
Aprende todo lo que puedas..