所以我有這個代碼完全沒有'文件附件',並將輸入的HTML消息發送到MYSQL數據庫中的所有收件人,但是當我做插槽在附件代碼中,郵件被髮送但只有一個收件人。請幫我:)爲什麼我的腳本只發送一條消息給MYSQL數據庫中的一個收件人
<html>
<head>
<title>test</title>
</head>
<body>
<?
mysql_connect("localhost", "root", "mypass") or die("Could not connect: " . mysql_error());
mysql_select_db("mydb");
$sql = mysql_query("SELECT * FROM mytable");
while($row = mysql_fetch_array($sql)){
$email = $row["email"];
$strSubject = $_POST["txtSubject"];
$strMessage = nl2br($_POST["txtDescription"]);
//*** Uniqid Session ***//
$strSid = md5(uniqid(time()));
$strHeader = "";
$strHeader .= "From: ".$_POST["txtFormName"]."<".$_POST["txtFormEmail"].">\nReply-To: ".$_POST["txtFormEmail"]."";
$strHeader .= "MIME-Version: 1.0\n";
$strHeader .= "Content-Type: multipart/mixed; boundary=\"".$strSid."\"\n\n";
$strHeader .= "This is a multi-part message in MIME format.\n";
$strHeader .= "--".$strSid."\n";
$strHeader .= "Content-type: text/html; charset=utf-8\n";
$strHeader .= "Content-Transfer-Encoding: 7bit\n\n";
$strHeader .= $strMessage."\n\n";
}
//*** Attachment ***//
if($_FILES["fileAttach"]["name"] != "")
{
$strFilesName = $_FILES["fileAttach"]["name"];
$strContent = chunk_split(base64_encode(file_get_contents($_FILES["fileAttach"]["tmp_name"])));
$strHeader .= "--".$strSid."\n";
$strHeader .= "Content-Type: application/octet-stream; name=\"".$strFilesName."\"\n";
$strHeader .= "Content-Transfer-Encoding: base64\n";
$strHeader .= "Content-Disposition: attachment; filename=\"".$strFilesName."\"\n\n";
$strHeader .= $strContent."\n\n";
}
$flgSend = @mail($email,$strSubject,null,$strHeader); // @ = No Show Error //
if($flgSend)
{
echo "Task Complete. Your emails are being forwareded to your clients";
}
else
{
echo "Error!!! Task incomplete. Please contact website maintainer.";
}
?>
</body>
</html>
你設置'內$ email'你'while'子句 - 但只有最終值將被保存循環的結尾。我看不到這是如何發送電子郵件給多人開始...... – andrewsi
它的工作原理。當我嘗試添加文件附件代碼時,我只弄亂了代碼。所以代碼現在都是失真的。但沒有附件代碼,它發送 –