1
有沒有可能的方式使用mysql發送帶附件的電子郵件?目前我可以使用mysql發送電子郵件,但沒有附件。 我需要包含一個來自硬盤的docx附件。如何使用mysql查詢發送帶有附件的電子郵件
我創建一個eml文件並將其發送到IIS(Inetpub),以便它可以獲取電子郵件。這是電子郵件通知的工作代碼:
SET @sqlString = CONCAT("SELECT 'To:[email protected]', ",
"'From: [email protected]', ",
"'Subject: test', ",
"'\r\n'",
"'test'",
"INTO OUTFILE 'C:/Inetpub/mailroot/Pickup/mail_", CAST(RAND() * (100000 - 1) + 1 AS CHAR(64)), ".eml' FIELDS TERMINATED BY '\r\n' ESCAPED BY ''");
PREPARE stmt FROM @sqlString;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
現在我需要一個附件。這是我的努力嘗試...
SET @sqlString = CONCAT("SELECT 'To:[email protected]', ",
"'From: [email protected]', ",
"'Subject: test', ",
"'Content-Type: application/octet-stream; name=\"C:/text.docx\"',",
"'Content-Transfer-Encoding: base64',",
"'Content-Disposition: attachment; filename=\"C:/text.docx\"',",
"'\r\n'",
"'test'",
"INTO OUTFILE 'C:/Inetpub/mailroot/Pickup/mail_", CAST(RAND() * (100000 - 1) + 1 AS CHAR(64)), ".eml' FIELDS TERMINATED BY '\r\n' ESCAPED BY ''");
PREPARE stmt FROM @sqlString;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
但它只創建一個docx文件,並沒有獲取正確的文件。它也刪除了正文文本。
有沒有可能的方法來附加文件。非常感謝您的幫助
上帝啊,不要這樣做。 MySQL沒有base64編碼功能。你不想自己寫一個。而是在客戶端應用程序中執行此操作。手工生成模擬電子郵件也是一個嚴重的痛苦。 – 2012-03-20 02:54:25
@Marc B感謝您的回覆和關注。但我需要安排電子郵件通知。 – sarah 2012-03-20 02:57:40
正確的編程語言可以構建/發送電子郵件遠比通過SQL查詢執行電子郵件要容易得多,並且也可以安排。再次,不要在數據庫中。 – 2012-03-20 14:26:01