2010-10-25 19 views
27

हमने एक ऐसी प्रणाली बनाई है जो किसी आउटगोइंग ईमेल में छवि को एम्बेड करने की अनुमति दे।अधिकांश मेल क्लाइंट के साथ संगत एम्बेडेड छवियों के साथ एक ईमेल कैसे बनाएं

यहां हमारे सिस्टम द्वारा निर्मित मूल संदेश है। इस उदाहरण में एक छवि अनुलग्नक और एक एम्बेडेड छवि है।

Mime-Version: 1.0 
From: ... 
To: ... 
CC: 
Subject: test 
x-sender: ... 
x-mailer: ... 
Content-Type: multipart/mixed; boundary="-------------...A128803765634794" 

---------------...A128803765634794 
Content-Type: multipart/related; boundary="-------------...B128803765634796" 

---------------...B128803765634796 
Content-Type: text/html; charset="UTF-8" 

<p style="margin: 0; padding: 0"><img src="cid:083.gif" alt="" /></p> 

---------------...B128803765634796 
Content-type: image/gif; name="083.gif" 
Content-ID: <083.gif> 
X-Attachment-Id: 083.gif 
Content-Disposition: Embedded; filename="083.gif" 
Content-transfer-encoding: base64 

............................................................................ 
............................................................................ 
...................................................... 
---------------PineappleCodeB128803765634796-- 
---------------PineappleCodeA128803765634794 
Content-type: image/gif; name="waiting.gif" 
Content-Disposition: Attachment; filename="waiting.gif" 
Content-transfer-encoding: base64 

............................................................................ 
............................................................................ 
...................................................... 
---------------PineappleCodeA128803765634794-- 

क्या कोई अन्य शीर्षलेख है जो मुझे जोड़ना चाहिए या नियम मुझे पालन करना चाहिए?

मैंने एक चीज़ देखा ... मुझे लगता है कि यह मेरा मुद्दा और भाग जीमेल का हिस्सा है। लेकिन किसी भी दर पर मैं इसे

हो रहा रोक ईमेल जीमेल में प्राप्त होता है बनाने के लिए करना मैं

छवियाँ प्रदर्शित नहीं हैं मिलेगा।
चित्रों को नीचे दिखाएं - हमेशा से छवियों को प्रदर्शित ...

एम्बेडेड छवि तो एक छवि लगाव (बस मेरी अन्य छवि लगाव की तरह)

मैं चित्रों को नीचे दिखाएं क्लिक के रूप में दिखाया गया है और मेरी छवि है ईमेल के शरीर में दिखाया गया है लेकिन संलग्नक अनुभाग से नहीं हटाया गया है।

यदि मैं अपने बॉक्स में वापस जाता हूं और ईमेल पर वापस जाता हूं तो यह ठीक दिखता है।

मुझे नहीं पता कि यह ऐसा क्यों करता है। यह एक लिंक की गई छवि नहीं है (बाहरी यूआरएल से) और जीमेल से जीमेल में एम्बेडेड छवियों को भेजते समय ऐसा नहीं होता है। यही कारण है कि मुझे लगता है कि मैं कुछ गलत कर रहा हूं और मुझे डर है कि यह अन्य प्राप्तकर्ताओं को प्रभावित कर सकता है।

+2

'एम्बेडेड' मान्य सामग्री-विस्थापन नहीं है। यह या तो 'इनलाइन' या 'अनुलग्नक' होना चाहिए। – dkarp

उत्तर

28

मैं के रूप में आप निम्नलिखित अंतर के साथ, का उपयोग कर रहे ठीक उसी हेडर के साथ सफलता मिली है:

+6

जानकारी @Jan के लिए धन्यवाद।मुख्य बात यह है कि मैं याद कर रहा था कि एमआईएम भाग के सामग्री-आईडी शीर्षलेख में कोण को ब्रैकेट में डालना है, जैसे: 'सामग्री-आईडी: <[email protected]>' अभी भी गैर का उपयोग करते हुए एचटीएमएल में इस तरह के ब्रैकेट संस्करण: ''। इसने जीमेल क्लाइंट में मेरे लिए समस्या हल की। – Guss

+7

अन्य बातों को लोगों को चिंता करने की ज़रूरत है कि हॉटमेल के लिए, ' 'काम नहीं करेगा। आपको इसके बजाय ' 'का उपयोग करना होगा। –

+5

@EarthEngine मुझे देखने के लिए थोड़ा सा लगा कि आप क्या मतलब था: डबल कोट्स के बजाय सिंगल कोट्स का उपयोग करें। – ctbrown

2

मैं Gmail में मुसीबत लोड हो रहा है इनलाइन चित्र हो रही थी और मैंने पाया कि मैं PHP में नाशपाती Mail_Mime पुस्तकालय गलत का उपयोग कर रहा था। जैसा कि पहले से ही उल्लेख किया गया है, सामग्री-आईडी को एक संदेश आईडी की तरह प्रारूपित किया जाना चाहिए। यदि कोई आपूर्ति नहीं की जाती है तो PEAR Mail_Mime लाइब्रेरी आपकी सामग्री-आईडी में एक डोमेन आईडी जोड़ने का प्रयास करेगी। यह लिंक बनाए रखने के लिए ईमेल के HTML निकाय में इन सामग्री-आईडी को प्रतिस्थापित करने का भी प्रयास करेगा। मेरे मामले में, यह चरण विफल रहा था जिसने HTML टैग से लिंक को MIME अटैचमेंट में तोड़ दिया। इसलिए जीमेल के लिए छवि इनलाइन प्रदर्शित करने से इनकार करने के लिए यह बिल्कुल सही था। हालांकि छवि ने एक अनुलग्नक के रूप में प्रदर्शित किया था।

संबंधित मुद्दे