在电子邮件中发送链接

时间:2012-09-07 00:23:01

标签: php gmail

好的,你们笑LOLZ之前 - >我不确定这是GMAIL问题还是我做错了但是我试图在邮件正文中插入电子邮件激活链接。

$body = "Or click on this link: <a href=\"http://www.url.com/start/page.php?verify=true&id=".$url."&activate=".$ac."> Activate Your Account </a>"


好的问题是我的GMAIL帐户显示:( BTW可点击并正确路由)

Or click on this link: <a href="http://www.url.com/start/page.php?verify=true&id=f22645cff5ecfd4d3c115af5&activate=75845> Activate Your Account </a>

我在这里缺少什么?这只是一个gmail问题吗?我怎样才能纠正这个? 我希望它显示:激活您的帐户

6 个答案:

答案 0 :(得分:3)

尝试关闭网址末尾的引用。

SO语法突出显示甚至向您展示了问题。

答案 1 :(得分:1)

  1. 错误的语法,
  2. 错误应该告诉你发生了什么,

    Parse error: syntax error, unexpected T_STRING on line x...
    

    2。发送HTML邮件时,Content-type标头必须设置为html

    我做了一些更改并测试了这个,试试这个工作脚本:

    <?php
    $body = 'Or click on this link: <a href="http://www.url.com/start/page.php?verify=true&id='.$url.'&activate='.$ac.'"> Activate Your Account </a>';
    // To send HTML mail, the Content-type header must be set
    $headers = 'From: webmaster@example.com' . "\r\n" .
    $headers  = 'MIME-Version: 1.0' . "\r\n";
    $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
    mail("to@gmail.com","Subject goes here",$body,$headers);
    ?>
    

    PHP Mail

    bool mail ( string $to , string $subject , string $message [, string $additional_headers [, string $additional_parameters ]] )
    

答案 2 :(得分:0)

你肯定在这里错过了双引号。

<a href="http://www.example.com/...5845>

这应改写为:

<a href="http://www.example.com/...5845">

答案 3 :(得分:0)

如果你没有设置标题,这对我有用。当然你需要设置自己的变量。

                $sender_email = strip_tags($sender_email);
                $subject = "=?UTF-8?B?".base64_encode(strip_tags($title))."?=";
                $message = nl2br(strip_tags($message));
                $headers = "From: ".$sender_email.' <'.$sender_email.'>'."\r\n";
                $headers .= "MIME-Version: 1.0\r\n";
                $headers .= "Content-Type: text/html;\r\n";
                $headers .= "\tformat=flowed;\r\n";
                $headers .= "\tcharset=\"utf-8\";\r\n";
                $headers .= "\treply-type=original\r\n";
                $headers .= "Content-Transfer-Encoding: 8bit\r\n";
                $headers .= "Reply-To: ".$sender_email."\r\n";

                $body =  __('sendfriend:defaultmessage') . '<br /><br/><a href="'.$link.'" title="'.$title.'" target="_blank">'.$link.'</a><br/><br />'.$message;
                $mail = mail($recipients, $subject, $body, $headers);

答案 4 :(得分:0)

确保将电子邮件作为HTML电子邮件发送。

$headers = "From: myEmail@example.com\r\n";
$headers .= "Content-Type: text/html\r\n";
mail(...$headers);

在邮件功能的末尾添加$ headers变量。

答案 5 :(得分:0)

首先在邮件功能中定义标题

  $headers = 'From: abc@example.com' . "\r\n" .
  $headers  = 'MIME-Version: 1.0' . "\r\n";
  $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";