如果查询不存在,如何重定位

时间:2016-07-28 15:27:11

标签: php mysql

如果查询的内容http://localhost/page.php?pid= 第一页打开了我,那就可以了,但如果我写http://localhost/page.php?pid= 第二页并且第二页不存在它仍然打开一个页面并给出此错误,因为找不到...

我理解为什么给我这个错误,但我不知道如果有人写错了查询如何重新定位网址

session_start();
require "conx.php";
// Determine which page ID to use in our query below ---------------------------------------------------------------------------------------

if(isset($_GET['pid'])){
    $pageid = preg_replace('[^a-z0-9_]', '', $_GET['pid']);
    }   
    // $tag is now santized and ready for database queries here
// Query the body section for the proper page
$stmt = $con->prepare('SELECT pagebody FROM pages WHERE linklabel = ?');
$stmt->bind_param('s', $pageid);
$stmt->execute();
$result = $stmt->get_result();
while ($row = $result->fetch_array()) {
    // do something with $row
    $body = $row["pagebody"];   
}

所以如果查询不存在我怎么能重新定位url地址?

1 个答案:

答案 0 :(得分:1)

如果您的目标是在结果为空(查询不存在)时重定向(重定位URL地址)用户,请尝试此操作:

//If the query return empty result redirect the user to 404 page !
if(!$result->num_rows) {
    header('Location: /404.php'); //Change it to your page
    exit;
}

我希望这会有所帮助。