दिलचस्प पोस्ट
वापसी 0 वैकल्पिक क्यों है? सी + + विंडोज और लिनक्स पर संकलन: ifdef स्विच जीवित रखने के साथ पायथन urllib2 टॉमकेट गिस / जेडीबीसी मेमोरी लीक संसाधनों से addFontFile जावा संरक्षित फ़ील्ड बनाम सार्वजनिक गेटर्स सी में फ़ंक्शन तर्कों के रूप में बहुआयामी arrays उत्तीर्ण करना Google मानचित्र एंड्रॉइड एपीआई v2 को स्क्रॉल करने और ज़ूमिंग को सीमित करें जावा में देरी कैसे करें? जहां Android वर्चुअल उपकरण को सहेजना संभव है? विजुअल C ++ जीसीसी के __त्तात्व__ के बराबर ((__ पैक्ड__)) मैं पीआईएल के साथ परिपत्र थंबनेल कैसे बनाऊँ? मेरे Perl परीक्षण `एन्कोडिंग 'utf8'` के साथ क्यों विफल हो जाते हैं? पॅक () क्या करता है? jquery यूआई संवाद: शीर्षक पट्टी के बिना कैसे आरंभ करें?

मेल समारोह द्रष्टांत नहीं किया जा सका। यह त्रुटि क्यों हो रही है

जब मैं PHPMailer के माध्यम से मेल भेजने का प्रयास कर रहा हूं, तो मुझे यह त्रुटि संदेश मिल रहा है। मेरा कोड नीचे है:

<? require("phpmailer/class.phpmailer.php"); // First we require the PHPMailer libary in our script $mail = new PHPMailer(); // Next we create a new object of the PHPMailer called $mail $mail->From = "rajasekar.kcet@gmail.com"; $mail->FromName = "Rajasekar"; $mail->AddAddress("rajasekar.kcet@gmail.com"); // This is the adress to witch the email has to be send. $mail->Subject = "First PHP Email message"; // This is the subject of the email message. $mail->Body = "Hi! \n\n This is my first e-mail sent through PHP."; // This is the actual email message if(!$mail->Send()) // Now we send the email and check if it was send or not. { echo 'Message was not sent.'; echo 'Mailer error: ' . $mail->ErrorInfo; } else { echo 'Message has been sent.'; } ?> 

वेब के समाधान से एकत्रित समाधान "मेल समारोह द्रष्टांत नहीं किया जा सका। यह त्रुटि क्यों हो रही है"

उबंटू में (कम से कम 12.04) यह लगता है कि sendmail डिफ़ॉल्ट रूप से स्थापित नहीं है। आपको इसे sudo apt-get install sendmail-bin command sudo apt-get install sendmail-bin का उपयोग करके इसे स्थापित करना होगा

आपको उपर्युक्त के अनुसार इसके लिए उचित अनुमतियों को भी कॉन्फ़िगर करने की आवश्यकता हो सकती है।

मैंने इस लाइन कोड का इस्तेमाल किया

 if($phpMailer->Send()){ echo 'Sent.<br/>'; }else{ echo 'Not sent: <pre>'.print_r(error_get_last(), true).'</pre>'; } 

यह पता लगाने के लिए कि समस्या क्या थी बाहर निकलता है, मैं सुरक्षित मोड में चल रहा था, और 770 या कुछ पंक्ति में, पांचवां तर्क, $params , mail() को दिया गया था, जो सुरक्षित मोड में चलते समय समर्थित नहीं है। मैं बस इसे बाहर टिप्पणी की, और voilá, यह काम किया:

 $rt = @mail($to, $this->EncodeHeader($this->SecureHeader($this->Subject)), $body, $header/*, $params*/); 

यह MailSend के भीतर है – PHPMailer का कार्य

मुझे बस यह समस्या थी और मेरे अपाचे त्रुटि लॉग में पाया गया कि sendmail इंस्टॉल नहीं हुआ था, स्थापना के बाद यह सभी काम कर रहा था जितना चाहिए!

 root@web1:~$ tail /var/log/apache2/error.log sh: 1: /usr/sbin/sendmail: not found 

एक ही समस्या थी बस एक त्वरित अपाच 2 error.log फ़ाइल को देखा और उसने कहा कि वास्तव में समस्या क्या थी:

 > sh: /usr/sbin/sendmail: Permission denied 

इसलिए, समाधान /usr/sbin/sendmail फ़ाइल (यह php से सुलभ नहीं था) के लिए उचित अनुमति देना था।

ऐसा करने का आदेश होगा:

 > chmod 777 /usr/sbin/sendmail 

सुनिश्चित करें कि यह भी मौजूद है!

सुनिश्चित करें कि आप smtp वर्ग भी शामिल है जो phpmailer के साथ आता है:

 // for mailing require("phpmailer/class.phpmailer.php"); require("phpmailer/class.smtp.php"); 

ईमेल भेजने के लिए SMTP का उपयोग करने का प्रयास करें: –

 $mail->IsSMTP(); $mail->Host = "smtp.example.com"; // optional // used only when SMTP requires authentication $mail->SMTPAuth = true; $mail->Username = 'smtp_username'; $mail->Password = 'smtp_password'; 

पुराने धागे को फिर से देखने के लिए, मेरा मुद्दा यह था कि "AddressTo" ईमेल पते में से एक मान्य नहीं था। उस ईमेल पते को निकालने से त्रुटि हट गई

उस पते के साथ प्रयास करें जो जीमेल नहीं है वे (जहां तक ​​मुझे पता है) की अनुमति नहीं देते, से मेल भेजने के लिए एसएमटीपी एक्सेस। मैं पिछले हफ्ते एक साधारण मेल प्रोग्राम कर रहा था और वे भी डिफ़ॉल्ट पोर्ट्स का उपयोग करने से नहीं भेजते हैं और यह आवश्यक है कि आप https पर परिवहन करें

अपने मेजबान से यह जांचने के लिए जांचें कि क्या उनके पास भेजी जा रही ईमेल की प्रति घंटा सीमा है

यह एक सिस्टम त्रुटि है

इस प्रणाली के साथ त्रुटि की जांच करें:

 tail /var/log/httpd/error_log 

यह किसी भी कारण हो सकता है

जैसा कि यहां बताया गया है , "इसका मतलब है कि आपका PHP इंस्टालेशन मेल () फ़ंक्शन को सही ढंग से कॉल करने के लिए कॉन्फ़िगर नहीं है (जैसे sendmail_path आपके php.ini में सही तरीके से सेट नहीं है), या आपके पास कोई स्थानीय मेल सर्वर स्थापित और कॉन्फ़िगर नहीं किया गया है।"

मेरे मामले में मुझे अपने वेबहोस्ट की सेटिंग में मेल () फ़ंक्शन ("मेल () कतार सक्रिय" की अनुमति देना था

"मेल फ़ंक्शन इन्स्तांत नहीं किया जा सकता" PHPMailer रिपोर्ट करने का तरीका है कि मेल () (मेल एक्सटेंशन में) को कॉल असफल रहा (इसलिए आप 'मेल' मेलर का उपयोग कर रहे हैं।)

आप PHP के मेल में कॉल करने से पहले @ एमएस (PHP) मेल :: मेलसेन्ड को हटाने की कोशिश कर सकते हैं और देख सकते हैं, अगर कोई हो, त्रुटियों को चुपचाप छोड़ा जा रहा है।

मैंने अपनी समस्या का समाधान किया है (वैम्प के लिए)

  $mail->IsSMTP(); $mail->Host='hote_smtp'; 

सही मूल्य से corse परिवर्तन hote_smtp का

एक पुरानी धागा, लेकिन यह मेरे जैसे किसी को मदद कर सकता है मैंने PHP.ini में एक वैध मूल्य के लिए एसएमटीपी सर्वर मूल्य की स्थापना के द्वारा इस मुद्दे का समाधान किया

बस पुरानी सूत्र की समीक्षा करते हुए आप PHPMailer को गहराई से जोड़कर डिबग कर सकते हैं:

 print_r(error_get_last()); 

यह आपके लिए सटीक त्रुटि मुद्रित करेगा जो डिफ़ॉल्ट php मेल () को तोड़ने के कारण हो रहा है

आशा है कि यह किसी को मदद करता है

मेरे पास एक ही त्रुटि थी उत्तर-को समस्या पैदा कर रहा था। मैंने इसे हटा दिया

 $email->AddReplyTo( $admin_email, $admin_name );