2016-03-03 9 views
6

मैं PHPMailer के साथ कोई समस्या है, मैं किसी भी ई-मेल नहीं भेज सकते हैं पकड़ लिया, और यह मुझे इस त्रुटि देता है:PHPMailer एसएमटीपी नोटिस: EOF जबकि अगर जुड़ा जाँच

2016-03-03 21:32:09 SERVER -> CLIENT: 2016-03-03 21:32:09 SMTP NOTICE: EOF caught while checking if connected 2016-03-03 21:32:09 SMTP Error: Could not authenticate. 2016-03-03 21:32:09 SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting Erreur : SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting 

यह मेरा कोड है:

<?php require('phpmailer/PHPMailerAutoload.php'); 
$mail = new PHPMailer(); 
$mail->IsSMTP(); 
$mail->Host = 'ssl://smtp.gmail.com'; 
$mail->SMTPAuth= true; 
$mail->Username='[email protected]'; 
$mail->Password='passwordgmail'; 
$mail->Port = 587; 
$mail->SMTPDebug = 2; 
$mail->SMTPSecure = 'ssl'; 
$mail->SetFrom('[email protected]com', 'Name'); 
$mail->AddAddress('[email protected]', 'HisName'); 
$mail->Subject = 'Subject'; 
$mail->Subject = "Here is the subject"; 
$mail->Body = "This is the HTML message body <b>in bold!</b>"; 
$mail->AltBody = "This is the body in plain text for non-HTML mail clients"; 
if(!$mail->Send()) { 
echo 'Error : ' . $mail->ErrorInfo; 
} else { 
    echo 'Ok!!'; 
    } 
?> 

मैंने उन सभी उत्तरों की कोशिश की जो मैंने पाया, लेकिन उनमें से कोई भी अब तक काम नहीं करता है। मैंने अन्य बंदरगाहों की भी कोशिश की, 25 और 465 काम नहीं करते और मुझे अन्य त्रुटियां देते हैं। अगर कोई मेरी मदद कर सकता है तो कृपया यह वास्तव में अच्छा होगा =)। धन्यवाद

उत्तर

11

आप SMTPSecure = 'ssl'Port = 587 के साथ उपयोग कर रहे हैं। वह काम नहीं करेगा। ssl/465 या tls/587 का उपयोग करें; उन्हें मिश्रण मत करो। यह (और कई अन्य समस्याएं) समस्या निवारण मार्गदर्शिका में त्रुटि संदेश लिंक से ढकी हुई हैं।

यह भी ध्यान रखें कि ssl: आपके Host मान में उपसर्ग SMTPSecure में मान को ओवरराइड करेगा, इसलिए मैं सुझाव दूंगा कि आप इसे वहां से हटा दें।

+0

उत्तर के लिए धन्यवाद =)। तो मैंने एसएसएल/465 और टीएलएस/587 की कोशिश की, और उनमें से कोई भी काम नहीं किया। एसएसएल/465 के साथ मुझे यह मिला: "एसएमटीपी त्रुटि: पासवर्ड कमांड विफल: 534-5.7.14 कृपया अपने वेब ब्राउजर और 534-5.7.14 के माध्यम से लॉग इन करें, फिर कोशिश करें \t एसएमटीपी त्रुटि: प्रमाणीकृत नहीं हो सका। 2016-03- 04 08:32:12 ग्राहक -> सर्वर: QUIT 2016-03-04 08:32:12 सर्वर -> ग्राहक: 221 2.0.0 समापन कनेक्शन x186sm2143474wmg.19 - gsmtp 2016-03-04 08:32:12 एसएमटीपी कनेक्ट() विफल। " क्या मुझे php.ini फ़ाइल को बदलने की आवश्यकता है? –

+0

ठीक है इसलिए मैंने SMTPAuth को झूठा करने का फैसला किया। अब मुझे यह मिला: एसएमटीपी त्रुटि: आरसीपीटी कमांड विफल रहा। एसएमटीपी नोटिस: कनेक्ट होने पर जांच करते समय ईओएफ पकड़ा गया। एसएमटीपी त्रुटि: निम्नलिखित प्राप्तकर्ता विफल: xxxx। मुझे नहीं पता कि प्राप्तकर्ता विफल क्यों हुए .. –

+1

तो आप आश्चर्यचकित हैं कि जब आप किसी सेवा के लिए प्रमाणीकरण बंद करते हैं तो यह काम नहीं करता है? मैं आपको सलाह देता हूं कि आप कैंची के साथ न दौड़ें। बस त्रुटि संदेश पढ़ें, दस्तावेज़ पढ़ें; यह सब वहाँ है। – Synchro

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