0

クエリの結果がページに分割されています。これは、次のコードを使用して行われます。

    <?php 
    if (isset($_GET["page"])) { $page  = $_GET["page"]; } else { $page=1; }; 
    $start_from = ($page-1) * 10; 
    $sql = "SELECT * FROM profiles where hoofdrubriek = '".$rubriekpage2."'  ORDER BY bedrijfsnaam LIMIT $start_from, 10"; 
    $rs_result = mysql_query($sql);

while ($row = mysql_fetch_assoc($rs_result)) { 

echo a result....

}

?>

次は、個別のページのナビゲーションを作成します。

<?php

if(mysql_num_rows($rs_result)!=0){

?>

<br /><div style="margin-left:200px;width:300px;text-align:center;background-color:">Pagina's:<br clear="left"> 


<?php 
$sql = "SELECT COUNT(bedrijfsnaam) FROM profiles where hoofdrubriek = '".$rubriekpage2."'"; 
$rs_result = mysql_query($sql); 
$row = mysql_fetch_row($rs_result); 
$total_records = $row[0]; 
$total_pages = ceil($total_records / 10); 

if ($total_pages>10) $total_pages=10;
for ($i=1; $i<=$total_pages; $i++) { 
            echo "<a style=\"float:none;display:inline-block;color:white;width:22px;text-align:center;text-decoration:none;font-size:20px;background-color:#483435;margin-left:4px\" href='".$plaatsnaam7.".php?page=".$i."'>".$i."</a> "; 

}; 
?>

これまでのところすべてがうまく機能し、問題はありません。ただし、10ページに制限されています。もちろん、数字を 25 に変更することもできますが、本当に欲しいのは、「数字」ナビゲーションの横にある前と次のボタンです。10 ページを超える場合は、次の 10 桁を表示する次へボタンを右側に配置します。

私は一晩中グーグルをしてきましたが、まともな結果、チュートリアル、またはそのようなものを1つも思いつきませんでした。私に手を貸してくれる気分の人はいますか?ありがとう!

4

1 に答える 1

0

現在のページが最初ではないかどうか、次の 10 ページが有効な場合はチェックし、有効な場合は前、次、ページのリンクを表示します。

 function page_link($i) {
      echo "<a style=\"float:none;display:inline-block;color:white;width:22px;text-align:center;text-decoration:none;font-size:20px;background-color:#483435;margin-left:4px\" href='".$plaatsnaam7.".php?page=".$i."'>".$i."</a> "; 
  }

  function page_next($i){
       // link to page $i with arrow right
  }
  function page_prev($i){
      // link to page $i with arrow left
  }
 $s = $_GET['page'];
 if ($s > 1) page_prev($s - 1);
 for  ($i = $s; $i * 10 < $total_count && $i < $s + 10; $i++) { 
      page_link($i);
 }
 if (10 + $i * 10 < $total_count) page_next($i+1);
于 2013-03-24T21:55:34.037 に答える