[英]Send Email Using Classic ASP with an Embeded Image
我正在使用所見即所得的編輯器制作NewsLetter ..它允許我上傳圖像路徑,並且圖像路徑存儲在上載目錄中。.不是當我使用它在網站上檢索該圖像時..編輯器的值存儲在數據庫示例中<br>
嗨
<img src="upload/acb.gif">
<br>
你好
我正在發送電子郵件,並且已從數據庫接收到此電子郵件的詳細信息,並將此詳細信息發送給訪問者
他正在獲取所有文本值,但看不到圖像
所以建議我該怎么辦..?
如果使用CDOSYS.Message發送電子郵件,則可以使用Message.CreateMHTMLBody(url)方法輕松地發送帶有嵌入式圖像的完整網頁。
Dim Message
Set Message = CreateObject("CDOSYS.Message")
Message.From = "from@email.org"
Message.To = "to@email.org"
Message.CreateMTHMLBody "http://yourserver.org/email.html"
Message.Send()
我最近清理了一些我要做的代碼,並在github上以“ Gist”的形式在線拍了拍; 希望它能對某人有所幫助!
此解決方案使用帶有“ AddAttachment”的CDO(CDOSYS / CDO.Message),並手動控制附件的屬性,以使附件在電子郵件HTML中可用,並避免它們在電子郵件客戶端中顯示為可單獨下載的附件。
用法非常簡單,只需通過消息HTML中的本地路徑(在運行代碼的計算機上)引用圖像,例如:
Some Image: <img src="<EMBEDDEDIMAGE:C:\test.jpeg>" />
該代碼將選擇文件名,將文件添加為郵件的附件,並使用對該附件的內部引用替換郵件HTML的相關部分。
您必須將網站網址添加到img源
<img src =“ http://www.sitename.com/upload/acb.gif”>,因為用戶沒有從他的郵箱訪問您的網站。
為此,您可以在web.config中將“ http://www.sitename.com/ ”設置為密鑰,並在郵件中使用。
這肯定會解決您的問題。 祝您編碼愉快!
您將使用AddRelatedBodyPart:
嵌入用法創建數組並將其作為電子郵件正文中的參數使用傳遞給“ SendMail”函數
Dim arrRelatedBodyPart(1)
arrRelatedBodyPart(0) = Server.MapPath(".") & "/images/barcode/bar_blk.gif"
arrRelatedBodyPart(1) = Server.MapPath(".") & "/images/barcode/bar_wht.gif"
例
For i = 0 To UBound(arrRelatedBodyPart)
Dim strPathAndFileName: strPathAndFileName = arrRelatedBodyPart(i)
Dim strFileName: strFileName = GetFileName(arrRelatedBodyPart(i), "/")
'.AddRelatedBodyPart strPathAndFileName, strFileName, cdoRefTypeId
Set objCDOBodyPart = .AddRelatedBodyPart(strPathAndFileName, strFileName, 1)
objCDOBodyPart.Fields.Item("urn:schemas:mailheader:Content-ID") = "<" & strFileName & ">"
objCDOBodyPart.Fields.Update
Next
您使用什么來發送電子郵件,過去我使用AspEmail取得了成功: http : //www.aspemail.com/
它說明了如何在此處發送嵌入的圖像: http : //www.aspemail.com/manual_04.html
但是,如果您使用共享主機,則必須將其安裝在服務器上,如果您很容易地運行自己的服務器,則可能會出現問題!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.