PHP Mail function sent duplicate email(PHP邮件功能发送了重复的电子邮件)
本文介绍了PHP邮件功能发送了重复的电子邮件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我构建了一个带有reCaptcha验证的表单,系统会向我的设置发送一式两份的电子邮件,并收到来自Office的垃圾邮件。
我的错误是什么?
一切正常,除了在填写表格时,我们当时收到了2封电子邮件。
<?php
if (isset($_POST["submit"])) {
$url = 'https://www.google.com/recaptcha/api/siteverify';
$privatekey = "******";
$response = file_get_contents($url."?secret=".$privatekey."&response=".$_POST['g-recaptcha-response']);
$data = json_decode($response);
if(isset($data->success) AND $data->success==true){
$to = "whois@sent.this";
$emailfrom = $_POST['email'];
$email = $_POST['email'];
$nom = $_POST['nom'];
$phone = $_POST['phone'];
$subject = "Formulaire de Contact Web ";
$commentaire = $_POST['commentaire'];
$headers = 'MIME-Version: 1.0' . "
";
$headers .= 'Content-type: text/html; charset=UTF-8' . "
";
$headers .= "Reply-to: $emailfrom";
$message = "
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Appel de service (rempli sur le site internet)</title>
<meta charset="UTF-8">
<style type="text/css">
h1,h2,h3,h4,h5,h6 {
font-family: Cambria, "Hoefler Text", "Liberation Serif", Times, "Times New Roman", serif;
color: #272727;
}
</style>
</head>
<body>
<h2 style="font-size: 1.25em; font-family: Gotham, ʼHelvetica Neueʼ, Helvetica, Arial, sans-serif;">Vous avez reçu une demande de contact sur votre site internet. </h2>
<br>
<table width="500" border="1" cellpadding="5" cellspacing="2">
<tbody>
<tr>
<td colspan="2" align="left" valign="middle" bgcolor="#84BDEC"><h3>Formulaire de contact Copiscan.com</h3></td>
</tr>
<tr>
<td width="155" align="left" valign="middle" bgcolor="#D5D5D5">Nom</td>
<td width="313" align="left" valign="middle">$nom</td>
</tr>
<tr>
<td width="155" align="left" valign="middle" bgcolor="#D5D5D5">Téléphone</td>
<td width="313" align="left" valign="middle">$phone</td>
</tr>
<tr>
<td align="left" valign="middle" bgcolor="#D5D5D5">Adresse courriel</td>
<td align="left" valign="middle">$email</td>
</tr>
<tr bgcolor="#D5D5D5">
<td colspan="2" align="left" valign="middle">Commentaire :</td>
</tr>
<tr>
<td height="75" colspan="2" align="left" valign="top">$commentaire</td>
</tr>
</tbody>
</table>
</body>
</html>
";
// Always set content-type when sending HTML email
mail($to, $subject, $message, $headers);
// so on...all your mail parameters here
if(mail($to, $subject, $message, $headers)){
header('Location: contactez-nous.php?CaptchaPass');
}else{
echo "mail could not be sent";
}
}else{
header('Location: contactez-nous.php?CaptchaFail');
}
}else{
header('Location: contactez-nous.php?CaptchaError');
}
?>
推荐答案
双重函数调用mail
// Always set content-type when sending HTML email
mail($to, $subject, $message, $headers);
// so on...all your mail parameters here
if(mail($to, $subject, $message, $headers)){
试试这个:
// Always set content-type when sending HTML email
$mailOk = mail($to, $subject, $message, $headers);
// so on...all your mail parameters here
if($mailOk){
或者反过来:
// Always set content-type when sending HTML email
// Remove this line --> mail($to, $subject, $message, $headers);
// so on...all your mail parameters here
if(mail($to, $subject, $message, $headers))){
这篇关于PHP邮件功能发送了重复的电子邮件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:PHP邮件功能发送了重复的电子邮件
基础教程推荐
猜你喜欢
- 通过 PHP SoapClient 请求发送原始 XML 2021-01-01
- mysqli_insert_id 是否有可能在高流量应用程序中返回 2021-01-01
- WooCommerce 中选定产品类别的自定义产品价格后缀 2021-01-01
- 在多维数组中查找最大值 2021-01-01
- 在 PHP 中强制下载文件 - 在 Joomla 框架内 2022-01-01
- 在 Woocommerce 中根据运输方式和付款方式添加费用 2021-01-01
- Libpuzzle 索引数百万张图片? 2022-01-01
- 如何在 PHP 中的请求之间持久化对象 2022-01-01
- 超薄框架REST服务两次获得输出 2022-01-01
- XAMPP 服务器不加载 CSS 文件 2022-01-01