w poniższym kodzie po wyborze jednego odbiorcy wiadomość zostaje wysłana bez problemu. Lecz gdy zaznaczę więcej niż jednego odbiorcę wywala błąd
Invalid address: xxx@gmail.comyyy@gmail.comYou must provide at least one recipient email address. There was an error sending the message:You must provide at least one recipient email address.
Próbowałem pętli foreach na tej linii:
$wiad->AddAddress ($mail);
i cały kod:
<?php include ('conf.php'); ?> <?php $sortuj = $_GET["sortuj"]; else $sortuj = "id_klient"; // wygeneruj tabelę ze wszystkimi produktami $zapytanie = "SELECT * FROM klient ORDER BY $sortuj "; //$zapytanie = "SELECT * FROM produkty ORDER BY nazwa" ; ?> <hr /> <table method='get'> <tr><th></th><th> ID </th><th> </th><th> </th><th> <th> <th> <?php ?> <tr> </td> </tr> <?php } ?> <?php $mail=''; $nazwisko=''; $imie=''; foreach($_POST['id'] as $idi){ $sql="SELECT imie,nazwisko,mail FROM klient WHERE id_klient=".$idi; $imie=$imie.''.$dane_klienta[0]; $nazwisko=$nazwisko.''.$dane_klienta[1]; $mail=$mail.''.$dane_klienta[2]; } require_once($_SERVER['DOCUMENT_ROOT'].'/lib/phpmailer/class.phpmailer.php'); require_once($_SERVER['DOCUMENT_ROOT'].'/lib/phpmailer/class.smtp.php'); $wiad = new PHPMailer(); // Instantiate your new class $wiad->IsSMTP(); // set mailer to use SMTP $wiad->SMTPAuth = true; // turn on SMTP authentication $wiad->Host = "smtp.gmail.com"; // specify main and backup server $wiad->SMTPSecure= 'ssl'; // Used instead of TLS when only POP mail is selected $wiad->Port = 465; // Used instead of 587 when only POP mail is selected $wiad->Username = "aaa@gmail.com"; $wiad->Password = "bbb"; $wiad->From = "aaa@gmail.com"; //Aparently must be the same as the UserName $wiad->FromName = "aaa"; $wiad->CharSet = "UTF-8"; $wiad->AddAddress ($mail); $wiad->Body = "Wiadomosc"; $wiad->AltBody = "Wiadomosc txt"; $wiad->Subject = "Temat wiadomosci"; if(!$wiad->Send()) { exit; } else { }} ?> </table> <input type="submit" name="klik" value="Wyslij"> <hr /><br/></form>