我有一個擁有2k +用戶的數據庫,我想向他們發送他們自己的密碼,但是可以通過羣發電子郵件發送給他們。羣發電子郵件可以通過多種方式完成,但問題是如何做到這一點,以便每個用戶都可以獲得他/她自己的唯一密碼?羣發電子郵件用戶的唯一密碼
用戶密碼存儲在MySQL數據庫中的一個字段內。電子郵件地址也是如此。
欣賞任何想法。
我有一個擁有2k +用戶的數據庫,我想向他們發送他們自己的密碼,但是可以通過羣發電子郵件發送給他們。羣發電子郵件可以通過多種方式完成,但問題是如何做到這一點,以便每個用戶都可以獲得他/她自己的唯一密碼?羣發電子郵件用戶的唯一密碼
用戶密碼存儲在MySQL數據庫中的一個字段內。電子郵件地址也是如此。
欣賞任何想法。
我想送他們自己的密碼
NOOOOOO請不要
SEEE例如Password policy hall of shame:
在普通文本中存儲密碼是不安全的。
現在是時候讓在線服務清理他們的行爲了!
另外:plaintextoffenders.com - 「你剛給我發回我自己的密碼?!」
通過電子郵件發送明文密碼被認爲是一種非常糟糕的做法。密碼應該散列;所有的用戶應該能夠通過電子郵件獲得一個鏈接來重置它。
要回答你的問題,你必須通過每條記錄,併發送一個自定義的電子郵件給每個客戶。這可能是資源密集型的,並且/或者如果一次有太多的信息會導致機器停機,所以你必須在發送每一組之間等待。您也可以使用第三方服務,如MailChimp。
謝謝,但是我意識到風險,這不是一個真實的網站,它是一個私人項目。密碼的發送方式也無關緊要。 –
@Johan夠公平的。在這種情況下,你只需簡單地發送每條消息......你的MailMerge思路也不錯,因爲這大概會分配一些負載。太好了! –
哪些錯誤使用這種方法(僞代碼):
$result = sql_query ("SELECT id, email, username, password FROM users"); // get all users
$mailer = new SomeMailer();
while ($row = sql_fetch_row($result)) {
$mailer->AddRecipient($row['email']);
$mailer->AddBody("Hey, here is you pass LOL: " . $row['password']);
$mail->Send();
}
那你是怎麼一般可以做到這一點,我建議你採取佩卡的建議雖然嚴重。以純文本發送密碼是一個很大的禁忌。
那麼,我發現最靈活和最簡單的方法來完成這是通過使用MS WORD內的MailMerge,然後發出消息。
Microsoft Word - >郵件 您必須從數據庫中提取所需的數據字段並將其保存爲MS Excell文件。
該數據庫的域名是什麼;-) –
您不能發送具有不同內容的單個郵件。您必須發送郵件,以循環方式更改每個用戶所需的內容。 – Rikesh
我同意Rikesh,我也建議你發送給用戶一個包含鏈接的消息。該鏈接將把他們帶到應用程序頁面,在那裏他們可以獲得他們當前的密碼 –