1


Facing an issue with the email URL's on my application.I send users the links for sharing files via email.The links is to login page on my application,which authenticates the user.Now the link in emails behaves different in different mail providers.Google does it in the right way i.e my link appears and works fine in google.
Yahoo the worst of all.It completely strips the href attribute from the link.This is after inspecting the link in firebug console.

<a style="color:#333;padding-left:3px;padding-right:10px;text-decoration:none;font-family:'Segoe UI', Tahoma, Verdana, Arial, Sans-Serif;font-size:10pt;" rel="nofollow" id="yui_3_13_0_1_1396955520023_2240">links.txt</a>

It adds the rel=nofollow which may be causing the issue.But I have no idea why this happens,went through web but found others facing same problem with no solution that works.
My link is something like this http://www.abc.com/authenticate.php?id=YLZr4Sj3MjAxNw==&pid=K4mfnbCyMQ==&auth=Iu8Yi2er This does not have any special character that may cause the issue.

Live.com : This adds a https:// protocol to the link instead of http:// The link I build is with http,but it internally adds https to it which I don't want.

Any one who has faced similar issues,I would like some inputs,guidance on the issue.

Cheers!

KillABug
  • 1,414
  • 6
  • 34
  • 69

3 Answers3

1

Make sure you aren't missing the http:// protocol-prefix. Your <a> tag should be in this format: <a href="http://www.abc.com">abc.com</a>

I used your link. Yahoo mail does not have any problem with it.

Beginner
  • 1,010
  • 4
  • 20
  • 42
0

Thank you for the answer. I came right with the following set of html in my code:

 # send the email to Applicant
$to = $application['myemail'];
$subject = 'Mentorship Registration Form';
$headers = "From: xxx@domain.com " . "\r\n";
$headers .= "Reply-To: ".  $application['myemail'] . "\r\n";
$headers .= "CC: zzz@domain.co.za, ccc@domain.co.za\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";
$message = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
            <title></title>
            <style></style>
        </head>
        <body>';
$message .= '<table align="center" border="0" cellpadding="0" cellspacing="0" width="600" style="color:#FFFFFF;background:#b4b4b4;padding:5px 0 0 0;">
        <tr>
-1

I had a similar issue then i just used stripslashes() with the email body and it worked perfectly fine

$body= stripslashes($mail_message);
geekbro
  • 1,293
  • 12
  • 13