2011-08-23 104 views
0

您能否告诉我如何在超链接中使用urlencode。我有一个MySQL数据库,它保存来自用户的查询。这个查询会显示在我的网站上,我想当另一个用户点击这个超链接时,它会去谷歌搜索。因为这些查询包含空间,我在网络阅读使用urlencode将转换成20这个空间。我的代码。如何在使用phpmysql的超链接中使用urlencode

echo("<br><a target=_blank href=www.google.com/search?q=urlencode($link[link]) class=z>$link[link]</a>"); 

这段代码有两个问题

  1. 它将为我的网站的继续打开。 代替www.google.com/search?q=query, 它打开作为www.mysite.com/www.google.com/search?q=query

  2. 因为我$link[link]加用urlencode的网站开通为www.mysite.com/www.google.com/search?q=urlencode(query)

urlencode也进入搜索词。

回答

1

从字符串中删除通话并连接所有的结果吧,应该这样做

echo("<br><a target=_blank href='www.google.com/search?q=".urlencode($link[link])."' class=z>$link[link]</a>"); 

编辑,我加了周围的网址一些报价,以及

+0

感谢您的回复..工作 – test

1

你需要做href属性包含解决#1的绝对URL并打破字符串并使用连接获取urlencoded以解决问题#2的url:

echo("<br><a target=_blank href='http://www.google.com/search?q=" . urlencode($link[link]) . "' class=z>{$link['link']}</a>"); 
  • 第三:你需要的时候,你在串插使用数组使用括号
  • 四:你应该用引号包围阵列键,以避免通知

以下成为:

class=z>$link[link]</a>  # this is wrong 
class=z>{$link['link']}</a> # should be this 

http://php.net/manual/en/language.types.string.php

+0

嘿fabio感谢您的答复..您的解决方案正在工作 – test

相关问题