URL $_GET 重定向问题

URL $_GET Redirect Issue

所以我有一个页面 singleTicket.php 从数据库中获取 id 并将其作为 singleTicket.php?id=someIDnumber 传递到查询字符串中。然后从数据库并加载必要的信息。很容易。如果用户编辑查询字符串 ID 号并且用户在浏览器栏中输入的 ID 不存在 ID,我会重定向它...但是如果用户完全取出查询字符串并将其保留为 singleTicket.php然后它只有一个页面,上面有一堆警告。我怎样才能防止这种情况发生?

视频广播: http://screencast.com/t/YFCZVsFwyui

注意:我的 .htaccess 中的 301 重定向不起作用。

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

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

检查是否设置了 $_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");