URL $ _GET重定向问题

时间:2015-08-03 22:47:12

标签: php mysql redirect get

所以我有一个页面singleTicket.php从数据库抓取id并将其作为singleTicket.php?id=someIDnumber传递给查询字符串。然后从数据库中获取票证ID加载必要的信息。很容易。我让它重定向,如果用户编辑查询字符串id号,并且没有id存在,用户放在浏览器栏中的id ...但是如果用户完全取出查询字符串并将其保留为singleTicket.php然后它只有一个页面上有一堆警告。我怎么能阻止这个?

VIDEOCAST: http://screencast.com/t/YFCZVsFwyui

注意:我的.htaccess中的301重定向无效。

2 个答案:

答案 0 :(得分:3)

您可以检查是否设置了$ _GET [' id']:

if (!isset($_GET['id'])) {
    // redirect or print a message.
}

答案 1 :(得分:0)

检查是否设置了$_GET['id'],如果没有重定向到您想要的位置。在进行任何输出之前,将它放在脚本的顶部:

isset($_GET['id']) && !empty($_GET['id']) ? $id = $_GET['id'] : header('Location // your redirect location');

作为一个很好的副作用,你也可以设置$id,你最有可能做到这两种方式。

如果您愿意,可以使用

重定向到404
header("HTTP/1.0 404 Not Found");