例如。说我有这个网址。
http://www.mywebsite.com/posts.php?id=54
如何确保我无法访问该页面?
http://www.mywebsite.com/posts.php
另外,如果有人输入了不存在的ID,我该如何阻止/重定向?
答案 0 :(得分:1)
在PHP中使用逻辑。
如果未提供id
,则会发出404
状态和错误消息,而不是常规页面。
如果您从数据库查询中得不到任何结果,我假设您正在制作,那么请执行相同操作。
答案 1 :(得分:0)
首先,检查$_GET['id']
是否为空。如果是,则显示“您无权访问该页面”之类的消息,或者只是发送404 HTTP标头
然后查询您的数据库以查找提供的Id是否存在。小心!因为Id是由用户输入的,所以使用PDO或类似的东西来防止SQL注入
如果数据库中不存在Id,请执行header("location: ...");
将用户重定向到某个页面,或者再次发送404 HTTP标头。
注意:您应该在任何echo
调用之前执行此操作或使用输出缓冲(ob_*
函数)。
答案 2 :(得分:0)
如果ID不存在:
header('HTTP/1.x 404 Not Found');
header("Status: 404 Not Found");
include_once '404.php';
404.php - 自定义404状态页面。
答案 3 :(得分:0)
使用这样的:
` $ url =' http://username:password@fernandohcorrea.com.br/path?arg=value#anchor';
的print_r(parse_url($ URL));
echo parse_url($ url,PHP_URL_PATH);