我有需要在whatsapp中共享的链接,如下所示。
<?php
$temp = 'whatsapp://send?text=http://www.example.com/index.php?
secid=1&url=/content/575098/ready-opposed.html';
?>
<a href="<?php echo urlencode($temp); ?>">
<img src="img_uploads/watsapp.png" width="18" height="18"/>
</a>
所以现在当我通过移动网站分享它时,在Whatsapp中我只得到 http://www.example.com/index.php?secid=1 ,但下一个参数网址不存在。只是为了测试我是否将url作为第一个参数而secid作为第二个参数然后我只收到url而不是secid。
在我的场景中,只有当存在这两个参数时才会呈现页面
有人可以帮我解决这个问题。
答案 0 :(得分:3)
只需使用rawurlencode()而不是urlencode() 例如
<?php
$value = 2;
$text = rawurlencode("www.domain.com/products.php?Id=".$value);
?>
<a href="https://api.whatsapp.com/send?text=<?php echo $text; ?>"><i class="fa fa-whatsapp"></i></a>
答案 1 :(得分:2)
我正在恢复旧的/死的答案,但我遇到了同样的问题并解决了对特殊字符进行编码的问题。
在这种情况下,convert the & with %26
一些参考:
答案 2 :(得分:0)
我使用以下方法解决了类似的问题:
$value = 2;
$message_to_send = urlencode(rawurlencode("www.domain.com/products.php?Id=".$value))