Hola a todos, mi problema es que tenía funcionando mi formulario PHP de manera correcta pero me he dado cuenta de que ahora ya no funciona. No sé desde cuándo!!
Los códigos son los siguientes:
forma.php
Código PHP:
<form action="confirmacion.php" method="post" name="formulario1" id="formulario1"
onsubmit="return Valida(this)">
<input type="hidden" name="direccionenvio"
value="[email protected]" id="Hidden1" />
<input type="hidden" name="paginaconfirmacion"
value="confirmacion.php" id="Hidden2" />
<h4 align="center" class="style3">Contactenos</h4>
<p align="center" class="style3">Por favor complete los campos y haga click en enviar, los
datos marcados con * son requeridos.</p>
<p align="center"><span class="style3">Nombre*</span>
<input type="text" name="nombre" size="20" /></p>
<p align="center"><span class="style3">Email*</span>
<input type="text" name="email" size="20" /></p>
<p align="center"><span class="style3">Comentario*</span>
<textarea name="comentario" cols="75" rows="15" id="comentario"></textarea>
</p>
<p align="center"><input type="submit" value="Enviar" name="B1"
id="Submit1" />
<input type="reset" value="Restablecer" name="B2"
id="Reset1" /></p>
</form>
confirmacion.php
Código PHP:
<script type="text/javascript">
<!--
function Valida(theForm)
{
if (theForm.nombre.value == "")
{
alert("Escriba un valor para el campo \"nombre\".");
theForm.nombre.focus();
return (false);
}
return (true);
}
//-->
</script>
<br />
<br />
<br />
<br />
<br />
<?//************************* CONFIRMACION DEL ENVIO *****************************?>
<?php include (envio.php); ?>
<h4>Estimado(a) <?php echo $_POST['nombre']; ?>,<br />
<br />
</h4>
Tu comentario Fue:
<br />
<br />
<br />
<?php echo $_POST['comentario']; ?>
<br />
<br />
¡Gracias por escribirnos!, le contestaremos a su dirección <strong><?php echo $_POST['email']; mail($mailTo,$mailSubject,$mailBody,$headers); ?></strong> muy pronto.
<?//************************* FIN CONFIRMACION DEL ENVIO *****************************?>
envio.php
Código PHP:
<?php
//************************* ENVIO DE EMAIL **********************************************************
//include("mandaemail.inc");
if ( isset($_POST['direccionenvio']) && isset($_POST['paginaconfirmacion']) ) {
$mailTo = $_POST['direccionenvio'];
$mailFrom = $_POST['email'];
$mailSubject = "Forma de correo";
$now = date('d-m-Y');
$name = $_POST['nombre'];
$texto = $_POST['comentario'];
/** MODIFIQUE AQUI EL CODIGO, INCLUYA UNA LINEA COMO LA DE Nombre: $nombre Y
'** DESPUES \n
'** PARA CADA CAMPO QUE HAYA AGREGADO SIN BORRAR <<<EOT y EOT; E INDIQUE EL
FORMATO DEL CORREO */
$mailFormat = 0; // 0 para correo HTML o 1 para correo de texto
$mailBody = <<<EOT
Fecha: $now \n
Nombre: $name \n
Email: $mailFrom \n
Texto: $texto \n
Fin del email
EOT;
MandaEmail($mailTo,$mailFrom,$mailSubject,$mailBody,$mailFormat);
//***MANDA A LA PÁGINA DE CONFIRMACION Y LE PASA LO QUE TRAEN LOS CAMPOS nombre y email
Header("Location:". $_POST['paginaconfirmacion'] . "$nombre=" . $_POST['nombre'] . "$email=" . $_POST['email']);
//*** FIN MANDA A LA PÁGINA DE CONFIRMACION Y LE PASA LO QUE TRAEN LOS CAMPOS nombre y email
} else {
$head = '<?xml version="1.0" encoding="UTF-8"?>';
$head .= <<<EOT
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>CONTACTENOS</title>
<style type="text/css">
<!--
body {
font-family:"Lucida Grande","Lucida Console",sans-serif;
}
#content {
font-size:0.8em;
position:absolute;
width:750px;
left:50%;
margin-left:-392px;
margin-top:3em;
padding:15px;
border:2px solid gray;
}
#content h4 {
font-family:"georgia",serif;
font-size:1.5em;
color:brown;
font-variant:small-caps;
margin-top:0;
}
-->
</style>
</head>
<body>
<div id="content">
<h4>Se han generado los siguientes errores</h4>
EOT;
echo $head;
if(!isset($_POST['direccionenvio'])) {
echo '<p>No se puede enviar el formulario porque el campo "direccionenvio" está vacío</p>';
}
if(!isset($_POST['paginaconfirmacion'])) {
echo '<p>No se puede enviar el formulario porque el campo "paginaconfirmacion" está vacío</p>';
}
$bott =<<<EOT
</div>
</body>
</html>
EOT;
echo $bott;
}
//**********************FIN ENVIO DE EMAIL **********************************************************
?>
<?php
function MandaEmail($mailTo,$mailFrom,$mailSubject,$mailBody,$mailFormat) {
if($mailFormat == 0) {
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
} else {
$headers = "";
}
$headers .= "From: ". $mailFrom . "\r\n";
$headers .= "Reply-To: " . $mailFrom . "\r\n";
$headers .= "X-Mailer: PHP/" . phpversion();
mail($mailTo,$mailSubject,$mailBody,$headers);
}
?>
mandaimail.inc
Código PHP:
<?php
function MandaEmail($mailTo,$mailFrom,$mailSubject,$mailBody,$mailFormat) {
if($mailFormat == 0) {
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
} else {
$headers = "";
}
$headers .= "From: ". $mailFrom . "\r\n";
$headers .= "Reply-To: " . $mailFrom . "\r\n";
$headers .= "X-Mailer: PHP/" . phpversion();
mail($mailTo,$mailSubject,$mailBody,$headers);
}
?>
Ya los rebicé bien y no veo falla.
Saludos!!