enviar formulario a mail?

stef
06 de Abril del 2004
necesito enviar los datos de un formulario a un email, i no me funciona.
Este es mi codigo:
compramos.htm-------
<html><body>
<table align="center">
<script language="Javascript">
function comprobar_datos() {
var Nombre= document.Compramos.Nombre.value;
var Telefono= document.Compramos.Telefono.value;
if ((Nombre.length == 0) || (Telefono.length == 0)) {
alert ('Debes introducir al menos los campos obligatorios');
document.Compramos.Nombre.focus(); }
else {
//Comprobar que el telefono tiene 9 numeros
if ( (Telefono.length != 9) || isNaN(Telefono) ) {
alert('El teléfono debe tener una longitud de 9 caracteres numéricos.');
document.Compramos.Telefono.focus(); }
else {
alert("Formulario enviado con exito");
window.open("enviar_email.php");
}
}
}
</script>
<form name="Compramos" method="post" action="compramos.htm" enctype="text/plain">
<tr>
<td><font size="-4" color="red">Nombre y Apellidos</font></td>
<td><font size="-4">Direcci&oacute;n</font></td>
</tr>
<tr>
<td><input type="text" name="Nombre" size="40"></td>
<td><input type="text" name="Direccion" size="40"></td>
</tr>

<tr>
<td><font size="-4" color="red">Telefono de contacto</font></td>
<td><font size="-4">E-Mail</font></td>
</tr>

<tr>
<td><input type="text" name="Telefono" size="20"></td>
<td><input type="text" name="E-mail" size="30"></td>
</tr>
<tr>
<td><font size="2"><b>Datos del local</b></font></td>
</tr>
<tr>
<td><font size="-4">Nombre</font></td>
</tr>
<tr>
<td><input type="text" name="NombreLocal"></td>
</tr>
<tr>
<td><font size="-4">Caracter&iacute;sticas del local</font></td>
</tr>
<tr>
<td colspan="2"><textarea name="Caracteristicas" rows="5" cols="50"></textarea></td>
</tr>
<tr>
<td colspan="2"><font size="-4" color="red">**Los campos marcados en rojo son obligatorios</font></td>
</tr>
<tr>
<td><input type="button" value="Enviar" onclick="javascript:comprobar_datos();"></td>
<td><input type="reset" value="Borrar"></td>
</tr>
</form></table></body></html>

------enviar_email.php-----
<html>
<body>
<?php
$destinatario="[email protected]"; //cuenta a la que se envia el formulario
$Nombre=$_POST["Nombre"];
$Direccion=$_POST["Direccion"];
$Telefono=$_POST["Telefono"];
$Correo=$_POST["E-mail"];
$Comentarios=$_POST["Comentarios"];
$subject="Formulario de busqueda"; //asunto
$cuerpo=
"Este mensaje fue enviado por:n" .
$Nombre."n" .
$Direccion."n" .
$Telefono."n" .
$Correo."n" .
"------------------------- COMENTARIO -------------------------nn" .
$Comentarios .
"nn------------------------------------------------------------n" ;
mail($destinatario,$subject,$cuerpo);
?>
<script language="Javascript">
alert("Formulario enviado con exito");
</script>
</body>
</html>
¿Alguien me puede decir que falla?

vlc
06 de Abril del 2004
¿Tal vez que el action del form lo manda a compramos.htm en vez de a enviar_email.php?

vlc
06 de Abril del 2004
Perdon!!. Me explico:
si haces un window.open, NO le estas mandando los datos via post. Ponle enviar_email.php en el action del form y en el javascript, en vez de window.open pon document.Compramos.submit() y funciona.