2011-05-29 16 views
9

से कनेक्ट नहीं हो सका मैं ईमेल के माध्यम से उपयोगकर्ताओं को पुष्टिकरण संदेश भेजने के लिए phpMailer का उपयोग करने की कोशिश कर रहा हूं। मेरा कोड यह है:PHPMailer जीमेल का उपयोग एसएमटीपी सर्वर के रूप में करने के लिए। एसएमटीपी होस्ट से कनेक्ट नहीं हो सकता है। मेलर त्रुटि: एसएमटीपी त्रुटि: एसएमटीपी होस्ट

<?php 
include("class.phpmailer.php"); 
include("class.smtp.php"); 
$mail = new PHPMailer(); 
$mail->IsSMTP(); // set mailer to use SMTP 
$mail->Host = "ssl://smtp.gmail.com"; // specify main and backup server 
$mail->Port = 465; // set the port to use 
$mail->SMTPAuth = true; // turn on SMTP authentication 
$mail->Username = "[email protected]"; // your SMTP username or your gmail username 
$mail->Password = "mypasswrord"; // your SMTP password or your gmail password 
$from = "[email protected]"; // Reply to this email 
$to="[email protected]"; // Recipients email ID 
$name="Jersey Name"; // Recipient's name 
$mail->From = $from; 
$mail->FromName = "Webmaster"; // Name to indicate where the email came from when the recepient received 
$mail->AddAddress($to,$name); 
$mail->AddReplyTo($from,"Webmaster"); 
$mail->WordWrap = 50; // set word wrap 
$mail->IsHTML(true); // send as HTML 
$mail->Subject = "Sending Email From Php Using Gmail"; 
$mail->Body = "This Email Send through phpmailer, This is the HTML BODY "; //HTML Body 
$mail->AltBody = "This is the body when user views in plain text format"; //Text Body 
if(!$mail->Send()) 
{ 
echo "Mailer Error: " . $mail->ErrorInfo; 
} 
else 
{ 
echo "Message has been sent"; 
} 
?> 

मैं पहले ही php.ini में एसएसएल सक्षम कर चुका हूं।

पीएस> [email protected] गोपनीयता की रक्षा के लिए एक मुखौटा ईमेल है। लेकिन मैं उस भाग

+0

आप http://swiftmailer.org/ का उपयोग कर विचार किया है? यह जीमेल के माध्यम से ईमेल भेजने के लिए बॉक्स से बाहर काम करता है। महान पुस्तकालय! :-) – Flukey

+0

इसके अलावा, "ssl: //smtp.gmail.com" से परिवर्तन मेजबान "smtp.gmail.com" – Flukey

+0

कुछ भी नहीं सब पर हुआ .. नहीं भी एक गूंज – phpDeveloperForThesis

उत्तर

14

आप php.ini में आप

extension=php_openssl.dll 
+2

यह केवल खिड़कियों के लिए है ... जहां लिनक्स लिनक्स –

+2

के लिए है: विस्तार = php_openssl.so –

0

में एक सच्चे ईमेल पता लगाया था here

2) से class.phpmailer.php में कोड की निम्न पंक्तियां टिप्पणी

/* 
if(strstr($hosts[$index], ":")) 
list($host, $port) = explode(":", 
$hosts[$index]); else 
*/ 

प्रयास करें इस अगर तुम नहीं है पहले से।

+1

कि लाइन मेरी कक्षा में मौजूद नहीं है। Phpmailer.php – phpDeveloperForThesis

0

This page में लेखक का दावा है कि "बेकार ढंग से काम किया"।

केवल वास्तविक अंतर मैं उसके बीच देख सकते हैं और तुम्हारा उसके पड़ता है:

$mail->Mailer = "smtp"; 

मुझे लगता है मैं अपने कोड के साथ शुरू होगा वास्तव में अगर यह काम करता है देखने के लिए, और फिर वहाँ से डिबग।

+0

अभी भी – phpDeveloperForThesis

+0

काम नहीं करता है तो उसका कोड उसके लिए काम करता है लेकिन आपके लिए नहीं ? फिर पर्यावरण में कुछ अलग है ... यह सुनिश्चित करने के लिए कि यह फ़ायरवॉल समस्या नहीं है, 'telnet smtp.gmail.com 465' आज़माएं। अगला सबसे संभावित कारण सर्वर के SSL प्रमाणपत्र को सत्यापित करने में विफलता है। – Nemo

2

के साथ लाइन uncommented है बस extension=php_openssl.dll

सक्षम और इन निर्देशों का this link

पर दिया मैं परीक्षण किया है का पालन सुनिश्चित करें, यह काम कर रहा है 100%।

0

गलत:

$mail->Host = "ssl://smtp.gmail.com"; // specify main and backup server 

अच्छा:

$mail->Host = "smtp.gmail.com"; // specify main and backup server 
+1

यह मेरे लिए काम नहीं किया। यह केवल "एसएसएल: //" के साथ काम करता है। – neave

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