2013-01-21 34 views
0

我有一個按鈕,當它按下時,它會通過電子郵件發送數據庫中的更新。如何使用php發送多個電子郵件

這是我的代碼。我也從一個論壇得到這個,但我不知道什麼是錯的,它沒有得到郵件數據庫:

$form_action = $_POST['form_action']; 
if ($form_action == 'REGISTER') { 

//send to your self 
$to ="[email protected]"; 

$subject = 'System Email'; 

// message 
$message = "<html>". 
"<head>". 
" <title>System Email</title>". 
"</head>". 
"<body>". 
"message here!". 
"</body>". 
"</html>"; 

//get email list 

//open database connection 
$username = "root"; 
$password = ""; //input your password here. 
$database = "dbase"; 
//connect to database 
$link=mysql_connect(localhost,$username,$password); 
@mysql_select_db($database) or die("<b>Unable to specified database</b>"); 

$query="SELECT email_address FROM db_other_details"; 
$result=mysql_query($query) or die('Error, query failed'); 
mysql_close($link); 

$row=1; 
$numrows=mysql_num_rows($result); 
$bccfield="Bcc: ". mysql_result($result,0,"email_address"); 
while($row<$numrows) 
{ 
$email=mysql_result($result,$row,"email_address"); 
$bccfield .= "," . $email; //seperate by comma 
$row++; 
} 
$bccfield .= "\r\n"; 

// To send HTML mail, the Content-type header must be set 
$headers = 'MIME-Version: 1.0' . "\r\n"; 
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; 
$headers .= $bccfield; 

$headers .= 'From: System <[email protected]>' . "\r\n"; 

// Mail it 
mail($to, $subject, $message,$headers); 

if (mail($to,$subject,$message,$headers)) { 
    header("Location: ".WEBSITE_URL."email-all.html?result=success"); 
} else { 
    header("Location: ".WEBSITE_URL."email-all.html?result=failed"); 
} 
} 

switch (trim($_GET['result'])) { 
    case "failed": 
     $sendmail_result = "failed"; 
     $form_message  = "Cannot send email to " . $numrows . "registrants at this time. Please try again later."; 
     break; 
    case "success": 
     $sendmail_result = "success"; 
     $form_message  = "Email sent to" . $numrows ." registrants."; 
} 

關於如何做到這一點有什麼建議?我在這裏查了一些其他話題,但沒有提供幫助。

謝謝!

回答

0

1)使用PDO。

2)確保你的php有錯誤信息。

3)var_dump/print_r您的變量& GET請求查看數據是否可用。

4)檢查mysql錯誤日誌查找潛在的查詢錯誤。

5)在用php :: mail()函數發送它們之前,UTF-8編碼你的數據。

+0

謝謝......但我仍然不明白:'( – bayan0926