分页错误与next和prev

时间:2013-10-31 11:20:13

标签: php mysql

我已经制作了以下分页,并且每页打印2篇文章,但是当我按下2或下一个没有发生时

即使我的脚本上有error_reporting,我也没有任何错误

为什么链接到页面或下一个按钮不起作用?

<?php
    error_reporting(E_ALL); ini_set("display_errors", 1);
    $db = mysql_connect("localhost", "root", "");
    mysql_select_db("dirts_mysql", $db);
    echo "<h1>articles</h1>";
    $pr_page = 2;
    $number = mysql_result(mysql_query("SELECT COUNT(*) FROM article WHERE category =                 1"), 0) or die(mysql_error());
    $show_from = (isset($_GET["visfra"]) && is_numeric($_GET["visfra"]) && $_GET["visfra"] < $number) ? $_GET["visfra"] : 0;
    $query = mysql_query("SELECT * FROM article ORDER BY id DESC limit $show_from,     $pr_page") or die(mysql_error());
    while ($row = mysql_fetch_array($query)) {
        ?>
        <link rel="stylesheet" type="text/css" href="style.css">
        <div id="news">
            <h2><u><? echo $row['name']; ?></u></h2>

            <p>
                <?php echo nl2br($row['description']); ?>...
            </p>
            <br/><br/>
            <a href="vis.php?id=<? print $row['id']; ?>">[...]</a>
        </div>
    <br>
    <?php
    }
    if ($show_from > 0) {
        $back = $show_from - $pr_page;
        echo "<a href='?showfrom=$back'>Forrige</a> ";
   }
    $page = 1;
    for ($start = 0; $number > $start; $start = $start + $pr_page) {
        if ($show_from != $page * $pr_page - $pr_page) {
            echo "<a href='?showfrom=$start'>$page</a> ";
        } else {
            echo $page . " ";
        }
    $page++;
    }
    if ($show_from < $number - $pr_page) {
        $next = $show_from + $pr_page;
        echo " <a href='?&showfrom=$next'>Næste</a>";
    }
    ?>

1 个答案:

答案 0 :(得分:0)

这是因为您要在链接中创建变量showfrom:

    echo " <a href='?&showfrom=$next'>Næste</a>";

但是在读取值时引用visfra

$show_from = (isset($_GET["visfra"]) && is_numeric($_GET["visfra"]) && $_GET["visfra"] < $number) ? $_GET["visfra"] : 0;