Pero he topado con un muro difícil de saltar, ya que no encuentro en problema sobre esto:
Tengo un form muy simple que utiliza mail() para enviar información al admin. La cosa está en que obtengo resultados muy raros:
- En firefox me envía 1 mensaje (correcto).
- En IE me envía 2 mensajes idénticos de golpe.
- En Webkit (chrome y opera) me envía 3 mensajes idénticos de golpe.
Siempre es así.
El código para ver si algún experto me puede al menos indicar la vía por donde atacar:
Código PHP:
$getcontact = $_GET['contacto'];
$getmail = $_GET['email'];
$getphone = $_GET['telefono'];
$gettext = $_GET['mensaje'];
$email = '---aquí va el mail dónde envío el mensaje---';
$subject = 'Consulta de un usuario';
$mensaje = '<div style="font-family: Arial, Helvetica, sans-serif; font-size: 12px; line-height: 1.5em; color: #333333; width: 100%;"><div style="background-color:#CC0000; color:#FFFFFF; padding:6px; border:1px #000000 solid;">Consulta de un usuario</div>
<div style="padding:6px; border:1px #000000 solid">
<p><strong>Nombre de la persona:</strong> '.$getcontact.'</p>
<p><strong>Email:</strong> '.$getmail.'</p>
<p><strong>Teléfono:</strong> '.$getphone.' </p>
<p><strong>Consulta:</strong></p>
<p>'.$gettext.'</p>
</div>
</div>';
$headers = "From: ".$getmail."\n"; // I suggest you try using only \n
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\n";
$headers .= "Reply-To: ".$getmail."\n";
// Enviamos el mensaje
if (mail($email, $subject, $mensaje, $headers)) {
$aviso = "Tu mensaje ha sido enviado correctamente";
} else {
$aviso = "Error de envío";
}
echo $aviso;
Decir que el mensaje siempre llega, el sistema nunca falla y todo eso, pero me tiene mosca lo de los duplicados, y más que sea según el navegador utilizado.
Agradezco cualquier sugerencia.
Saludos