मैं दो दिनों के बेहतर हिस्से के लिए PHP के ईमेल पढ़ने के कार्यों से जूझ रहा हूं। मैं मेलबॉक्स से ईमेल पढ़ने और सर्वर पर कोई अनुलग्नक सहेजने के लिए एक स्क्रिप्ट लिख रहा हूं। यदि आपने कभी ऐसा कुछ किया है, तो आप मेरे दर्द को समझ सकते हैं: PHP ईमेल के साथ अच्छा नहीं खेलता है!मैं PHP में सर्वर से ईमेल संलग्नक कैसे सहेज सकता हूं?
मैंने पीओपी 3 सर्वर से कनेक्ट किया है और मैं फ़ाइलों को पुन: सक्रिय कर सकता हूं। यहां कोड की एक मोटा रूपरेखा है:
if (!$mbox = imap_open ("{myserver.com:110/pop3/notls}INBOX", "u", "p"))
die ('Cannot connect/check mail! Exiting');
if ($hdr = imap_check($mbox))
$msgCount = $hdr->Nmsgs;
else
die ("Failed to get mail");
foreach ($overview as $message) {
$msgStruct = imap_fetchstructure($mbox, $message->msgno);
// if it has parts, there are attachments that need reading
if ($msgStruct->parts) {
foreach ($msgStruct->parts as $key => $part) {
switch (strtoupper($part->subtype)) {
case 'GIF': case 'JPEG':case 'PNG':
//do something - but what?!
break;
}
}
}
}
मैंने चिह्नित किया है कि मैं कहां फंस गया हूं। मैं imap_fetchbody($mbox, $message->msgno, $key+1)
उपयोग कर सकते हैं लेकिन यह है कि मुझे इस तरह के डेटा का एक गुच्छा हो जाता है:
/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAUDBAQEAwUEBAQFBQUGBwwIBwcHBw8LCwkMEQ8S
EhEPERETFhwXExQaFRERGCEYGh0dHx8fExciJCIeJBweHx7/2wBDAQUFBQcGBw4ICA4eFBEU
Hh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh7/wAAR
CAHiAi0DASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAA
AgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkK
FhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWG
h4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl
5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREA
...
मुझे विश्वास है कि इस माइम डेटा है नेतृत्व कर रहा हूँ। मुझे इसे एक छवि के रूप में चाहिए! मैंने इंटरनेट के चारों ओर बमबारी करने वाले कई वर्गों को देखा है जो आवश्यक जादूगर करने का दावा करते हैं। मैं उनमें से कोई भी काम करने के लिए नहीं मिल सकता है। मुझे समझ में नहीं आता कि मुझे यह इतना मुश्किल क्यों मिल रहा है!
कम में, मैं कुछ है कि वास्तविक डेटा में एक कच्चे माइम स्ट्रिंग बदल सकते हैं के लिए देख रहा हूँ।
क्या आपने संलग्नक एन्कोडिंग की जांच की है? – kender
अरे क्या आप एक और पूर्ण स्निपेट पोस्ट कर सकते हैं? मुझे यह काम नहीं मिल रहा है बीसी मुझे यकीन नहीं है कि – st4ck0v3rfl0w
से $ ओवरव्यू आ रहा है, मुझे आपकी जैसी ही समस्या है। मुझे कुछ अच्छा लेख मिला, और मुझे लगता है कि यह आपकी मदद कर सकता है http://www.linuxscope.net/articles/mailAttachmentsPHP.html इसका आनंद लें :) – Hassan