0

以下のphpスクリプトを使用して、mysqlからコメントを生成し、同時にページ付けしています。データベースに19行あり、変数のページごとに5つのコメントを設定しました。したがって、4つのリンクが必要[1] [2] [3] [4]です。しかし、私は3つのリンクしか取得していません。エラーは発生しません。1ページあたりを2に設定しても、3つのリンクが表示されます。

 <?php    
         $per_page = 5;
         $total_query = $query = mysql_query("SELECT COUNT(*) FROM comments ")  or die (mysql_error());

         $pages =  ceil(mysql_result($total_query, 0) / $total_query);

         $page = (isset($_GET['page'])) ? (int)$_GET['page'] : 1;

         $start = ($page - 1) *  $per_page ;

         $query = mysql_query("SELECT * FROM comments LIMIT $start, $per_page")  or die (mysql_error());   

         while ($comment = mysql_fetch_assoc($query)) {

         <?php echo $comment['owner'] ; ?>

         <?php echo htmlspecialchars($comment['body']) ;?>

         <?php $date = date_create($comment['created']); 
         echo  date_format($date, 'F j, Y g:i a'); ?>  

          if ($pages >= 1 && $page <= $pages) {

     for ($x = 1; $x<=$pages; $x++) {

     echo ($x == $page)  ? '<a href="http://127.0.0.1/page.php?page='.$x.'">' . $x 

.'</a> </span>' : '<a href="http://127.0.0.1/page.php?page='.$x.'"> [' . $x .' ]</a> ';

  }
  }
  ?>  
4

1 に答える 1

2

あなたのライン:

$pages =  ceil(mysql_result($total_query, 0) / $total_query);

結果を取得し、...で除算します。これは。$total_queryである必要があります$per_page

于 2013-02-12T03:29:53.500 に答える