Ver Mensaje Individual
  #1 (permalink)  
Antiguo 04/02/2011, 05:43
lockalt
 
Fecha de Ingreso: febrero-2011
Mensajes: 18
Antigüedad: 15 años, 8 meses
Puntos: 0
Pregunta Formulario PHP abrir ventana "echo "<SCRIPT>window.open"

Hola es mi primer mensaje en el foro, pero miro mucho ya que dais muchas soluciones y cada día se aprende algo nuevo visitandolo.

Se que es un tema muy tratado ya que he ido de un lado a otro del foro recopilando código e intentarlo solucionar por mi mismo, pero no hay manera

Mi problemilla:

Tengo un formulario en .html, que utiliza un .php para enviar los datos.
Una vez hecha la comprobación en php me gustaría que abriera una ventana tipo pop-up. Las soluciones que he encontrado no he logrado que funcionasen

Tengo el siguiente html para el formulario:

Código HTML:
<form action="../src/enviar.php" method="post" enctype="multipart/form-data" name="form" id="form" >
	<input type="hidden" name="nombre" id="name" value="Mensaje desde la web" />
	<label class="texte">NAME </label>
		<input class="imput1" type="text"  name="nombre" value="" /><br />
	<label class="texte">MAIL </label>
		<input class="imput1" type="text" name="mail" value="" /><br />
	<label class="texte">MESSAGE </label>
    <textarea class="imput2" name="mensaje"></textarea>
    <br />
<input type="submit" name="Enviar" id="enviar" value="Enviar" />
</form> 

Luego este es el php que envía los datos.

Código PHP:
<?php
# Guardo en la variable los campos del form
$nombre = $_POST['nombre'];
$mail = $_POST['mail'];
$telefono = $_POST['telefono'];
# Verifico que los campos se hallan completado
if ($nombre == "" AND $mail == "" AND $telefono == "" AND $mensaje == "") {
  
# Muestro mensaje de error
  
echo "<SCRIPT>window.open='http://www.yahoo.com';</SCRIPT>";
}
# Caso contrario, procedo a enviar el email
else{
  
$header = 'From: ' . $mail . " \r\n";
  
$header .= "X-Mailer: PHP/" . phpversion() . " \r\n";
  
$header .= "Mime-Version: 1.0 \r\n";
  
$header .= "Content-Type: text/plain";

  
$mensaje = "Este mensaje fue enviado por " . $nombre . ", numero de telefono " . $telefono . " \r\n";
  
$mensaje .= "Su e-mail es: " . $mail . " \r\n";
  
$mensaje .= "Mensaje: " . $_POST['mensaje'] . " \r\n";
  
$mensaje .= "Enviado el " . date('d/m/Y', time());

  
$para = '[email protected]';
  
$asunto = 'Contacto desde Pagina Web';

  if (
mail($para, $asunto, utf8_decode($mensaje), $header)) {
    echo 
'El mensaje fue enviado!';
  }
  else {
    echo 
'Error inesperado. El mensaje no se envio.';
  }
}
?>

Soy consciente de que hay varios errores, pero mi ya me encontré la primera piedra :(


Mi lógica me dice, que da la miasma manera que me funciona después de "# Muestro mensaje de error" esto para abrir en la misma pagina:
Código PHP:
echo  "<SCRIPT>window.location='http://www.google.es';</SCRIPT>"; 

Me funcionase esto otro para abrir un pop-up:
Código PHP:
echo "<SCRIPT>window.open='http://www.yahoo.com';</SCRIPT>"; 
Pero este ultimo no hay manera de que funcione, con todos los ejemplos que he encontrado por la red.
¿Donde esta el error o esto no se podría realizar?

Espero haberme explicado bien, muchas gracias :D