我有这样的网址:
process_request.php?fileName=newpage.html
我尝试通过以下方式检索fileName
参数:
if (isset($_REQUEST['fileName'])) { ... }
它不起作用,我想知道文件名中的句点是否可能是问题。我似乎找不到确切的答案。 PHP的URL编码功能似乎对句点没有任何作用。
答案 0 :(得分:1)
.
)是有效的查询字符串值。为什么?因为:
print urlencode("This is a ... query string! hazzah");
输出:
This + is + a + ... + query + string%21 + hazzah
因此,这不是造成您明显问题的原因。
使用不包含fileName
的{{1}}参数重新运行代码,并查看代码是否按预期运行:
process_request.php?fileName = newpage.html
.
if (isset($_REQUEST['fileName'])) { print "it worked!"; die; }
的{{1}}值以检查它是否符合您的期望(例如,在PHP.ini中可能关闭了var_dump()
变量)。
process_request.php?fileName = newpage.html
$_REQUEST['fileName']
检查您的$_REQUEST
(或类似名称)是否未重写您的操作网址
检查 var_dump($_REQUEST);
if (isset($_REQUEST['fileName'])) { print "it worked!"; die; }
语句 IS 是否正在运行,并且由于其他问题,错误或失败而没有给您预期的结果。