Problema al mandar formulario por email
Publicado por joseda (1 intervención) el 09/05/2011 20:08:11
Dispongo de una página con un formulario, el cual llama a enviar.php para mandar los datos por email, pero a la hora de pulsar el botón, me aparece una ventana con el mensaje ¿Desea abrir o guardar este archivo?.
Tengo activo el apache, y no consigo que funcione. Por favor, agradezco vuestra ayuda. Adjunto el código de la página y del php:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento sin título</title>
</head>
<body>
<form id="contacto" name="contacto" method="post" action="enviar.php">
<p align="left">
<label><strong>Nombre: </strong>
<input name="nombre" type="text" id="nombre" size="35"/>
</label>
</p>
<p align="left">
<label><strong>Empresa:</strong>
<input name="empresa" type="text" id="empresa" size="35"/>
</label>
</p>
<p align="left">
<label><strong> E-mail: </strong>
<input name="mail" type="text" id="mail" size="35"/>
</label>
</p>
<p align="left">
<label><strong>Mensaje:</strong><br />
<textarea name="mensaje" cols="40" rows="8" id="mensaje" ></textarea>
</label>
</p>
<p align="left">
<input type="submit" name="submit" value="Enviar" />
<label>
<input type="reset" name="Borrar" id="Borrar" value="Restablecer" />
</label>
</p>
</form>
</body>
</html>
ENVIAR.PHP
<?php
$nombre = $_POST['nombre'];
$mail = $_POST['mail'];
$empresa = $_POST['empresa'];
$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 . ", de la empresa " . $empresa . " \r\n";
$mensaje .= "Su e-mail es: " . $mail . " \r\n";
$mensaje .= "Mensaje: " . $_POST['mensaje'] . " \r\n";
$mensaje .= "Fue enviado... " . date('d/m/Y', time());
$para = "TU EMAIL";
$asunto = 'ASUNTO DEL MENSAJE';
mail($para, $asunto, utf8_decode($mensaje), $header);
?>
Tengo activo el apache, y no consigo que funcione. Por favor, agradezco vuestra ayuda. Adjunto el código de la página y del php:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento sin título</title>
</head>
<body>
<form id="contacto" name="contacto" method="post" action="enviar.php">
<p align="left">
<label><strong>Nombre: </strong>
<input name="nombre" type="text" id="nombre" size="35"/>
</label>
</p>
<p align="left">
<label><strong>Empresa:</strong>
<input name="empresa" type="text" id="empresa" size="35"/>
</label>
</p>
<p align="left">
<label><strong> E-mail: </strong>
<input name="mail" type="text" id="mail" size="35"/>
</label>
</p>
<p align="left">
<label><strong>Mensaje:</strong><br />
<textarea name="mensaje" cols="40" rows="8" id="mensaje" ></textarea>
</label>
</p>
<p align="left">
<input type="submit" name="submit" value="Enviar" />
<label>
<input type="reset" name="Borrar" id="Borrar" value="Restablecer" />
</label>
</p>
</form>
</body>
</html>
ENVIAR.PHP
<?php
$nombre = $_POST['nombre'];
$mail = $_POST['mail'];
$empresa = $_POST['empresa'];
$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 . ", de la empresa " . $empresa . " \r\n";
$mensaje .= "Su e-mail es: " . $mail . " \r\n";
$mensaje .= "Mensaje: " . $_POST['mensaje'] . " \r\n";
$mensaje .= "Fue enviado... " . date('d/m/Y', time());
$para = "TU EMAIL";
$asunto = 'ASUNTO DEL MENSAJE';
mail($para, $asunto, utf8_decode($mensaje), $header);
?>
Valora esta pregunta


0