Send af Mail Formular PHP, mail sendes 2 gange?
Hej EksperterJeg er ved at lave en bestillingsformular til vores kantine, men oplever at mailen sendes to gange når man submitter.
Jeg har lavet en enkelt udgave som har samme problem.
Det foregår på en lokalserver med PHP installeret og PHP.ini ændret så den sender igennem vores Exchange server
Håber der er nogen der kan se hvor det går galt, for jeg kan ikke.
PHP.ini ændringen:
[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = IP PÅ EXCHANGE SERVER
; http://php.net/smtp-port
smtp_port = 25
HTML Kode:
<!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=utf-8" />
<title>test send</title>
</head>
<script type="text/javascript"src="send.js"></script>
<body>
<form action="mail2.php" method="post" name="mail" onsubmit="return send()">
<p>test
<input type="text" name="test" id="test" />
</p>
<p>
<input type="submit" name="submit" id="submit" value="Submit" />
</p>
</form>
</body>
</html>
Java Script der tjekker om feltet er udfyldt:
function send()
{
if(document.mail.test.value=="")
{
alert("Du skal udfylde alle felter med *")
return false;
}
return true;
}
PHP Mail formular:
<?php
// Variabler bliver oprettet ud fra Form
$test = $_POST['test'];
$to = 'til@test.com';
$subject = "$test";
// Email i HTML Kode
$message = "
<head>
<meta http-equiv='Content-Type' content='text/html; charset=utf-8' />
<title>Kantine Bestilling</title>
<table>
<tr>
<td>Test:</td>
<td>$test</td>
</tr>
";
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$email = ('fra@test.com') ;
$headers .= "From: fra@test.com" . "\r\n";;
// Koden der reelt sender mailen
mail($to, $subject, $message, $headers);
$sent = mail($to, $subject, $message, $headers) ;
if($sent)
{print "Bestillingen bev sendt"; }
else
{print "Der skete en fejl med bestillingen"; }
?>