J'ai un problème lors de l'envoi de plusieurs e-mails cc séparés par un symbole de virgule en utilisant PHPMailer. . J'utilise PHP 7.PHPMailer envoie plusieurs adresses e-mail cc séparées par le symbole coma
J'ai ces données dans ma base de données mysql contient plusieurs adresse e-mail dans un seul compte d'utilisateur séparés par la virgule (,).
Je suivent déjà la réponse de cette question here, mais sa ne fonctionne pas. Les e-mails ne peuvent être envoyés qu'à [email protected] [email protected] n'a reçu aucun courrier.
J'ai essayé de echo var_dump (maildbs);
sortie affichée sans coma. .
[email protected]@mail.com
Voici mon code PHP. .
sendmail.php
<?php
$connect = mysqli_connect("", "", "", "");
global $connect;
if(isset($_POST['Submit'])){
$staffname = $_POST['staffname'];
$sql = "SELECT * FROM table WHERE staff_name ='$staffname'";
$get = mysqli_query($connect,$sql);
if($get && mysqli_num_rows($get) > 0)
{
while($row = mysqli_fetch_assoc($get))
{
$maildbs = explode(',',$row["email_address"]);
foreach($maildbs as $maildb){
date_default_timezone_set('Etc/UTC');
require_once '../PHPMailerAutoload.php';
$mail = new PHPMailer;
$mail->isSMTP();
$mail->SMTPDebug = 2;
$mail->Debugoutput = 'html';
$mail->Host = "host";
$mail->Port = 25;
$mail->SMTPAuth = false;
$mail->setFrom('[email protected]', 'Sender');
$mail->addAddress('[email protected]','receipent');
$mail->addCC($maildb);
$mail->Subject = 'PHPMailer SMTP without auth test';
$mail->msgHTML(file_get_contents('contents.html'), dirname(__FILE__));
$mail->AltBody = 'This is a plain-text message body';
$mail->Body = 'body content';
$mail->addAttachment('images/phpmailer_mini.png');
if (!$mail->send()) {
echo "Mailer Error: " . $mail->ErrorInfo;
} else {
echo "Message sent!";
}
}
}
mysqli_free_result($get);
}
}
?>
<!DOCTYPE html>
<html><title>Test Email</title></head>
<body>
<table>
<form action="sendmail.php" method="POST">
<tr>
<td>Staff Name :</td>
<td><input type="text" name="staffname" value="" ></td>
</tr>
<tr>
<td></td>
<td><input type="submit" name="Submit" value="send email"></td>
</tr>
</form>
</table>
</body>
</html>
apprécierions si quelqu'un peut aider.
Cela est terriblement inefficace. Regardez [l'exemple de liste de diffusion fourni avec PHPMailer] (https://github.com/PHPMailer/PHPMailer/blob/master/examples/mailing_list.phps) pour savoir comment le faire mieux. Ajoutez une adresse CC ou BCC à la fois en utilisant 'addCc()' et 'addBcc()'. Notez également ce que 'clearAddresses()' fait. – Synchro
Merci @Synchro. – AlotJai