Ver Mensaje Individual
  #6 (permalink)  
Antiguo 13/08/2012, 08:47
Avatar de emprear
emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 17 años, 5 meses
Puntos: 1567
Respuesta: Problema con formulario e innerHTML, PHP y Javascript

Tu esquema es un poco confuso, por que hacer un innerHTML si tu php puede generar el mensaje por si mismo, faltaría saber si el form y la respuesta están integradas en un solo archivo o si son 2 distintos.
Si después de mostrar un mensaje querés agregar una redirección, entonces usas el stTimeout como te indiqué para dar tiempo a leer el mensaje


Ejemplo
formulario.php
Código PHP:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <head>
  5. <title>titulo</title>
  6. <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  7. </head>
  8. <body>
  9. <?php
  10. if(!isset($_POST['procesar'])){
  11. ?>
  12. <form action="<?php echo $_SERVER['SCRIPT_NAME']; ?>" method="post">
  13. <input type="text" name="nombre" /><br />
  14. <input type="submit" value="contactar" name="procesar" />
  15. </form>
  16. <?php
  17. }else{
  18.  
  19. // envio email
  20. $mail = "correcto";
  21.  
  22. if($mail == 'correcto'){
  23. echo "<p>Tu mensaje ha sido enviado, en unos segundos serás redirigido a nuestra página principal</p>";
  24. echo <<< SCRIPT
  25. <script type="text/javascript">
  26. function redir(){
  27. window.location.href = "index.html";
  28. }
  29. setTimeout('redir()', 3000);
  30. </script>
  31. SCRIPT;
  32. }else{
  33. echo "<p>Se ha producido un error al enviar, <a href='". $_SERVER['SCRIPT_NAME'] . "'>inténtar nuevamente</a></p>";
  34. }
  35.  
  36. }
  37. ?>
  38.  
  39. </body>
  40. </html>

Para verificar, cambia el valor de la variable $mail a otra cosa. Demás está decir que tu php, antes de enviar el email, debería hacer las validaciones correspondientes

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.