我想知道你们是否可以帮助我解决一些看似非常简单的事情,但我不知何故无法让它按照我想要的方式工作。
下面的代码是我为向人们发送电子邮件而编写的。但是 $allEmails 中的每个 emailadres 都收到了 2 封电子邮件,并且数据库也被填充了两次,但是相同的回显只显示一次.....
if($_POST['submitButton'] == "Versturen")
{
$idcollecte = mysql_query("SELECT yc_collectes.id
FROM yc_collectes
WHERE yc_collectes.naampubliekecollecte = '$naampubliekecollecte'");
$fetchidcollecte = mysql_fetch_array($idcollecte);
$id = $fetchidcollecte['id'];
$nummer = 1;
$voornaam1 = $_POST['voornaam1'];
$achternaam1 = $_POST['achternaam1'];
$email1 = $_POST['emailadres1'];
$voornaam2 = $_POST['voornaam2'];
$achternaam2 = $_POST['achternaam2'];
$email2 = $_POST['emailadres2'];
$voornaam3 = $_POST['voornaam3'];
$achternaam3 = $_POST['achternaam3'];
$email3 = $_POST['emailadres3'];
$voornaam4 = $_POST['voornaam4'];
$achternaam4 = $_POST['achternaam4'];
$email4 = $_POST['emailadres4'];
$voornaam5 = $_POST['voornaam5'];
$achternaam5 = $_POST['achternaam5'];
$email5 = $_POST['emailadres5'];
$allvoornamen = array($voornaam1, $voornaam2, $voornaam3, $voornaam4, $voornaam5);
$allachternamen = array($achternaam1, $achternaam2, $achternaam3, $achternaam4, $achternaam5);
$allEmails = array($email1, $email2, $email3, $email4, $email5);
if($allEmails != '')
{
$a = 0;
echo "<pre>";
print_r($allEmails);;
echo "</pre>";
foreach($allEmails as $singleEmail)
{
if($singleEmail != '')
{
echo '1';
//Elk emailadres in database stoppen 1x... nu 2x
mysql_query("INSERT INTO yc_uitnodigingen (emailadres, collecteid)
VALUES ('$singleEmail', $id)");
//
$to = $singleEmail;
if($allvoornamen[$a] == '')
{
$allvoornamen[$a] = 'Meneer/Mevrouw';
$allachternamen[$a] = '';
}
$subject = 'YouCollect Uitnodiging.';
$message = ('
<html>
<body>
<h3>Beste '.$allvoornamen[$a].''.$allachternamen[$a].', '.$name.' nodigd u uit voor een Collecte! </h3>
<table>
<tr>
<td>Dit is het uitnodigingsbericht: </td>
<td></td>
<td>Om mee te doen aan de collecte dient u op de volgende link te klikken:</td>
<td><a href="youcollect.nl/index.php/nl/bedanktmeedoen?naampubliekecollecte='.$naampubliekecollecte.'">Doe mee aan deze collecte!</a></td>
</tr>
</table>
</body>
</html>
');
$headers = 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'MIME-Version: 1.0' . "\r\n";
mail($to, $subject, $message, $headers);
$a++;
}
}
}
}
所以我想要的是 $allEmails 中的每个 $singleemail 都收到一封电子邮件,并且数据库被插入一次而不是两次。
有人看到代码有什么问题吗?
致谢