如何验证 $_GET 以仅允许特定密钥
假设我当前的 URL 是
http://domain.com/category/cars/?page=2
如何在此页面上进行验证以仅允许 $_GET['page']
?
如果用户在 URL 上输入以下内容,将转到错误页面。
http://domain.com/category/cars/?page=2&bar=foo
http://domain.com/category/cars/?foo=bar&page=2
http://domain.com/category/cars/?foo=bar&bar=foo
让我知道..
Let's say my current URL is
http://domain.com/category/cars/?page=2
How do I validate on this page to allow only $_GET['page']
?
If user type on URL something below, will go to error page.
http://domain.com/category/cars/?page=2&bar=foo
http://domain.com/category/cars/?foo=bar&page=2
http://domain.com/category/cars/?foo=bar&bar=foo
Let me know..
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
好吧,你可以使用:
Well, you could use:
您应该只关心应用程序中使用的 GET/POST 变量。相应地验证并转义它们,检查它们是否已设置。其余的应该被忽略 - 你不需要关心它们并显示错误。
You should care only of GET/POST variables used in your application. Validate and escape them accordingly, check if they're set. The rest should be ignored - you don't need to care of them and display errors.
您不必担心不需要的参数和值,因为它们不会通过
$_GET
方法被接受。对于上面的代码,唯一允许的$_GET
参数是 'page'You won't have to worry about your undesired parameters and values, as they will not be accepted via the
$_GET
method. With the above code, the only allowed$_GET
parameters is 'page'我可能会这样做:
I might do this: