2015-11-02 106 views
0

我得到一个querystring参数,比如companyname = Larson & tubro。它是单个字符串。但是我的剧本只是在'&'之后破坏它。在PHP中将此作为单个字符串的解决方案是什么?我试着像下面:查询字符串url编码

<A onclick="window.open('comparitive_files/price_add.php?supplier_name= + urlencode({$supplier_name})&amp;tender_id={$tender_id}','mywindow','width=1200,height=800,scrollbars=yes,resizable=yes')" 
    href="#"> 
+0

请发布您正在使用的代码。这将使调试问题变得更容易。 – Eric

+1

您正在尝试在javascript中使用php函数。 – Mattigins

回答

0

&用于单独的查询字符串变量。请使用&amp;

为了防止其他非法字符在你的查询字符串取得,使用urlencode()

+0

这个'Larson&tubro'的公司名称来自mysql db,我没有控制权。 –

+0

当你把它放在url中时,你有控制权吗?使用类似''companyname ='+ urlencode(databaseoutput)' – Ivar

+0

'我尝试给这样的urlencode像这样..

0

使用urlencode编码

urlencode($companyname); 

urldecode解码

urldecode($companyname) 
1

您正试图在php之外使用php函数。尝试这样的事情。

echo '<A onclick="window.open(\'comparitive_files/price_add.php?supplier_name='.urlencode($supplier_name).'&tender_id='.$tender_id.',\'mywindow\',\'width=1200,height=800,scrollbars=yes,resizable=yes\')" href="#">';