如何在页面不存在时为留言簿制作404

时间:2015-04-03 18:43:06

标签: php

我正在使用带有分页的留言簿。 所以在网址中是这样的:http://example.com/guestbook/guestbook.php?page=6 在url中键入一个尚不存在的页面时(例如page = 9999) 他给了我一个回声:“成为第一个在留言簿上写的人” 如何将404放到所有那些尚不存在的页面上?

 if (mysqli_num_rows($results) != 0) { // if DB is not empty

// display records
while ($row = mysqli_fetch_array($results))
{ ?>
    <div class="wrapper">

        <div class="velden"> <!-- for styling echos; CSS -->
            <div class="header">
                <div class="naam"><?php echo htmlspecialchars($row['name'], ENT_QUOTES, UTF-8, true); ?></div> <!-- echo naam-->
                <div class="email"><?php echo htmlspecialchars($row['email'], ENT_QUOTES, UTF-8, true); ?></div> <!-- echo email-->
                <div class="tijd"><?php echo $row['datetime']; ?></div> <!-- echo datum en tijd-->

            </div>

            <div class="bericht"><?php echo htmlspecialchars($row['message'], ENT_QUOTES, UTF-8, true); ?></div> <!-- echo bericht-->

        </div> <!-- end velden -->

<?php } ?>


        <?php echo pagination($statement,$per_page,$page,$url='?'); ?>
    </div> 


<?php } else { // DB is emtpy
 echo "Be the first to write in the Guestbook";
}

2 个答案:

答案 0 :(得分:2)

在其他地方

header('HTTP 1.1 404 Not Found');

答案 1 :(得分:1)

这样的事情可能有所帮助:

else { // DB is emtpy
    if (isset($_GET['page']]) {
        echo 'Page 404';
    } else {
        echo "Be the first to write in the Guestbook";
    }
}

这个扩展虽然不是很好,但我会说。您可以使用您发布的部分之前的代码(解析mysql查询的数据)来实现相同的功能并拥有更清晰的代码。