2009-08-23 10 views
9

मैं एक सादा/एचटीएमएल मल्टीपार्ट ईमेल भेजने की कोशिश कर रहा हूं और मैं वर्तमान में PHP के मेल() फ़ंक्शन का उपयोग कर रहा हूं। कई लोगों ने PHPMailer की सिफारिश की है, इसलिए मैंने सोचा कि मैं इसे जाने दूंगा।मैं PHPMailer का उपयोग कैसे करूं? मुझे ऑनलाइन एक सरल सभ्य ट्यूटोरियल नहीं मिल रहा है

हालांकि, जैसा कि सब कुछ आजकल लगता है, यह बहुत जटिल प्रतीत होता है। मैंने इसे डाउनलोड किया और यह इसे स्थापित करने और MySQL कनेक्शन और एसएमटीपी कनेक्शन को कॉन्फ़िगर करने के बारे में बात करता है !? मैं बस इतना करना चाहता हूं कि एक अच्छी कक्षा का उपयोग करें जो मेरे लिए एमआईएमई ईमेल बनाएगा और उन्हें भेज देगा! मैं एसएमटीपी संभावनाओं को समझता हूं लेकिन यह सब बहुत जटिल लगता है!

क्या इसका उपयोग करने का कोई तरीका है, उदाहरण के लिए, एक php फ़ाइल (कोई सर्वर स्थापना या PHP को फिर से संकलित नहीं करना) शामिल करें और फिर ईमेल बनाने और भेजने के लिए कक्षा का उपयोग करना?

अगर कोई चीजों को आसानी से समझा सकता है तो मैं बहुत आभारी हूं! मुझे यकीन है कि यह संभव है और मैं खोज के अपने घंटों के बाद विश्वास नहीं कर सकता हूं, इसके बारे में कोई वास्तव में अच्छा, सरल लेख नहीं है। सब कुछ ठीक है जब मुझे पता है कि यह होने की जरूरत नहीं है!

+0

आप [PHPMailer] के साथ प्रदान की रीडमी पढ़ने की कोशिश किया (https://github.com/PHPMailer/PHPMailer)? जैसा कि आप वर्णन करते हैं, इसमें एक HTML ईमेल भेजने का एक सीधा उदाहरण है। मुझे पता है कि यह एक पुराना सवाल है, लेकिन इसमें PHPMailer के लिए भी एक मूल लिंक की कमी है! – Synchro

उत्तर

0

इसके बजाय SwiftMailer आज़माएं।

+0

धन्यवाद, मुझे यह पहली बार काम कर रहा है! महान दस्तावेज़ भी! :-) –

+0

मई मैं पूछ सकता हूं कि आप ऐसी सिफारिश क्यों करते हैं? मुझे भी लगता है कि phpmailer आजकल सबसे अच्छा नहीं है, लेकिन मैं अनजान हूं। धन्यवाद – Daniel

+0

एक लाइन, केवल लिंक जवाब? यह कोई जवाब नहीं है। यह ओपी के सवाल पर भी छूता नहीं है। – RozzA

4

मुझे PHPMailer के बारे में कुछ भी पता नहीं है, लेकिन मैं Zend_Mail का उपयोग करने की सलाह देता हूं। यहाँ एक अनुलग्नक के साथ एक सरल उदाहरण है:

$mail = new Zend_Mail(); 
$mail->setBodyText('This is the text of the mail.'); 
$mail->createAttachment($myImage, 
         'image/gif', 
         Zend_Mime::DISPOSITION_INLINE, 
         Zend_Mime::ENCODING_8BIT); 
$mail->setFrom('[email protected]', 'Some Sender'); 
$mail->addTo('[email protected]', 'Some Recipient'); 
$mail->setSubject('TestSubject'); 
$mail->send(); 

यह शायद सब कुछ आप चाहते हैं करता है (संलग्नक, एचटीएमएल, एसएमटीपी-विन्यास, ...)। डिफ़ॉल्ट रूप से यह sendmail का उपयोग करता है, जैसे mail() फ़ंक्शन, इसलिए यदि आपको इसकी आवश्यकता नहीं है तो आपको SMTP जैसे कुछ भी कॉन्फ़िगर करने की आवश्यकता नहीं है।

इसमें भी बहुत अच्छा दस्तावेज है, इसलिए आपको उदाहरण खोजने में परेशानी नहीं होगी।

+0

मैं ज़ेंड फ्रेमवर्क से आवश्यक कार्यों को कैसे निकालूं? –

8

सुंदर तरीका (this link से), पहली PHPMailer का विस्तार करने और अपनी साइट के लिए डिफ़ॉल्ट सेट:

require("class.phpmailer.php"); 

class my_phpmailer extends phpmailer { 
    // Set default variables for all new objects 
    var $From  = "[email protected]"; 
    var $FromName = "Mailer"; 
    var $Host  = "smtp1.example.com;smtp2.example.com"; 
    var $Mailer = "smtp";       // Alternative to IsSMTP() 
    var $WordWrap = 75; 

    // Replace the default error_handler 
    function error_handler($msg) { 
     print("My Site Error"); 
     print("Description:"); 
     printf("%s", $msg); 
     exit; 
    } 

    // Create an additional function 
    function do_something($something) { 
     // Place your new code here 
    } 
} 

तो (इस उदाहरण में यह mail.inc.php नाम है) ऊपर स्क्रिप्ट जहां जरूरत में शामिल है और उपयोग अपने नव निर्मित कहीं अपनी साइट पर my_phpmailer वर्ग:

require("mail.inc.php");//or the name of the first script 

// Instantiate your new class 
$mail = new my_phpmailer; 

// Now you only need to add the necessary stuff 
$mail->AddAddress("[email protected]", "Josh Adams"); 
$mail->Subject = "Here is the subject"; 
$mail->Body = "This is the message body"; 
$mail->AddAttachment("c:/temp/11-10-00.zip", "new_name.zip"); // optional name 

if(!$mail->Send()) 
{ 
    echo "There was an error sending the message"; 
    exit; 
} 

echo "Message was sent successfully"; 
+0

अच्छा लगता है लेकिन लिंक टूटा हुआ है – Baumr

+0

PHP में बहुत सारे एक्सटेंशन का उपयोग क्यों किया जाता है, जो कड़े वर्गों को जोड़ता है और निर्भरता प्रस्तुत करता है, इसके बजाय एकत्रीकरण का उपयोग क्यों नहीं करते? – Vitalij

+0

वास्तव में ओपी के प्रश्न का उत्तर देने और कोड प्रदान करने के लिए बहुत सराहना की। यह मेरे लिए काम किया - धन्यवाद! – RozzA

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