百分号PHP字符串

时间:2013-04-30 13:47:19

标签: php string echo

我想在数据库上触发查询:

$query="SELECT field1 from table_name where field2 like '%".$_REQUEST['var1']."%'";

页面显示 500内部服务器错误

在调试时,我回显 $ query 。 它就像:

SELECT field1 from table_name where field2 like 'value_of_var1%'

第一个百分号在哪里消失了? 我在互联网上搜索了一些说我必须加上双百分号(%%)才能逃脱百分号。如果是这样,为什么第二个百分号不需要转义?

这个代码(查询)正在AJAX页面中执行,为了调试我通过URL打开了那个AJAX页面。 它显示出完美的结果

SELECT field1 from table_name where field2 like '%value_of_var1%'

但是当通过AJAX调用页面时,它显示没有第一个百分号。 你能帮我理解究竟是什么问题吗?

2 个答案:

答案 0 :(得分:2)

感谢您的回复。 我的问题是,$_REQUEST['var1']是一个数字。 %号在HTML下解析。 对于错误500,我的代码中出错了。

答案 1 :(得分:0)

将值分配给变量。

$variable = $_REQUEST['var1'];  
$query = "SELECT field1 from table_name where field2 like '%".$variable."%'";

此查询已经过测试并正常运行。