2016-10-01 13 views
5

में ब्रैकेट में दिखाई देता है I phpmailer का उपयोग अपने शरीर पर एक हाइपरलिंक के साथ एक ईमेल भेजने के लिए करता है। मैं इस कोड है:PHPMailer: हाइपरलिंक Outlook

$body = "<a href='".DIR."activate.php?x=$id&y=$activasion'>".DIR."activate.php?x=$id&y=$activasion</a>"; 
require('classes/PHPMailerAutoload.php'); 
     $mail = new PHPMailer; 
     $mail->CharSet = "UTF-8"; 
     $mail->SMTPDebug = 2;    // Enable verbose debug output 
     $mail->isSMTP();     // Set mailer to use SMTP 
     $mail->Host = SMTP_HOST;   // Specify main and backup SMTP servers 
     $mail->SMTPAuth = true;   // Enable SMTP authentication 
     $mail->Username = SMTP_USER;  // SMTP username 
     $mail->Password = SMTP_PASSWORD; // SMTP password 
     $mail->SMTPSecure = 'ssl';  // Enable TLS encryption, `ssl` also accepted 
     $mail->Port = 465;    // TCP port to connect to 
     $mail->setFrom(SMTP_USER); 
     $mail->addAddress($to);   // Add a recipient Name is optional 
     $mail->isHTML(true);    // Set email format to HTML 
     $mail->Subject = $subject; 
     $mail->Body = $body; 
     $mail->AltBody = $altbody; 
     if(!$mail->send()) { 
      echo $mail->ErrorInfo; 
     } 

जब मैं एक जीमेल पते पर ईमेल भेजने और जीमेल में खोलने हाइपरलिंक ठीक लग रहा है (मैं लिंक पर क्लिक करें और पृष्ठ पर रीडायरेक्ट कर सकते हैं)।

लेकिन जब मैंने उसे आउटलुक को भेजने हाइपरलिंक इस तरह दिखता है:

[my.domain.com/activate.php?x=52 & y = aa1fdf437c526ee219decc1ea72fc266] my.domain.com/activate। php? एक्स = 52 & y = aa1fdf437c526ee219decc1ea72fc266

क्या गलत हो सकता पर कोई भी विचार?

+2

गायब http: // – nogad

उत्तर

4

ई-मेल क्लाइंट के पास अलग-अलग प्रतिपादन इंजन होते हैं।

ऐसा प्रतीत होता है कि जीमेल http:// या https:// प्रोटोकॉल के बिना एक लिंक प्रस्तुत करेगा।

आउटलुक को अभी भी इसकी आवश्यकता हो सकती है। टिप्पणी में @Synchro से

नोट:: //

$body = "<a href='//".DIR."activate.php?x=$id&y=$activasion'>".DIR."activate.php?x=$id&y=$activasion</a>";


संपादित करें:

एक प्रोटोकॉल कम (उर्फ योजना-कम) URL का उपयोग कर प्रयास करें

बेनामी/सापेक्ष प्रोटोकॉल यूआरएल ईमेल में एक बुरा विचार है क्योंकि जब तक कि आप किसी वेबमेल क्लाइंट में न हों, आपके पास होने के लिए कोई आधार प्रोटोकॉल नहीं है, और इसलिए वे बस टूट जाते हैं। इसे स्पष्ट बनाएं और यह हर जगह काम करेगा, और इन दिनों https का उपयोग न करने के लिए एक अच्छा बहाना खोजना मुश्किल है।

+1

बेनामी/रिश्तेदार प्रोटोकॉल यूआरएल ईमेल में एक बुरा विचार है क्योंकि जब तक कि आप किसी वेबमेल क्लाइंट में नहीं हैं, आपके पास कोई आधार प्रोटोकॉल नहीं है, और इसलिए वे तोड़ते हैं। इसे स्पष्ट बनाएं और यह हर जगह काम करेगा, और इन दिनों https का उपयोग न करने का अच्छा बहाना खोजना मुश्किल है। – Synchro