我的$ link在href ='mailto'中不起作用

时间:2016-11-14 14:05:32

标签: php html

这就是我获取链接的方式

$link = 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']; 

当我回应echo 'My link : ' . $link;

时,这就是它的样子

http://www.mylink.com/myfile.php?int=&int1=ASD++

但是当我把链接放在

中时
echo "<a href='mailto:$mail&subject=Aktiviteter&body=$link'>Press on the link</a>";

我只得到

http://www.mylink.com/myfile.php

所以我想念我?int =&amp; int1 = ASD ++,我怎么能得到它?对不起,如果我不清楚。

3 个答案:

答案 0 :(得分:1)

echo "<a href='mailto:$mail?subject=Aktiviteter&body=$link'>Press on the link</a>";

您需要填写电子邮件地址后?不是&amp;

修改 这个是整个剧本,它对我有用......

<?php
$mail = 'df@me.com';
$link = 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']; 
echo "<a href='mailto:$mail?subject=Aktiviteter&body=$link'>Press on the link</a>";
?>

答案 1 :(得分:1)

您的链接被视为构建电子邮件的字符串的一部分。

您的电子邮件客户端将请求视为:

  subject = Aktiviteter
  body = http://www.mylink.com/myfile.php?int=
  int1 = ASD++

因为电子邮件客户端不知道如何处理“int1”,所以它会忽略它。

要解决此问题,您需要使用PHP的urlencode函数将$ link变量编码到mailto URL中。

试试这个:

<?php
    $link = 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']; 
    $encoded = urlencode($link);
    echo "<a href='mailto:$mail?subject=Aktiviteter&body=$encoded'>Press on the link</a>";
?>

答案 2 :(得分:0)

尝试字符串连接。

echo "<a href='mailto:" . $mail . "?subject=Aktiviteter&body=" . $link . "'>Press on the link</a>";