2017-08-09 22 views
0

私はページごとに5レコードを表示しようとすると、PHPを使用してページネーションを作成しようとしています。すべてうまく動作しますが、次のページに行くためにページネーションリンクをクリックすると、エラーメッセージが表示されます。アクセス禁止のエラー

アクセス禁止!

要求されたオブジェクトにアクセスする権限がありません。サーバーによって読み取り保護されているか読み取れないかのいずれかです。

これがサーバーエラーと思われる場合は、ウェブマスターにお問い合わせください。

エラー403

はlocalhostのApache/2.4.25(Win32の)のOpenSSL/1.0.2jのPHP/5.6.30

は、ここに私のコードです。

<?php 
     define("SPP", 5); 
    if(isset($_GET['groupname']) && isset($_GET['uniname'])) { 
     /* VARS */ 
     $xpage = 0; 
     $content = null; 
     $totalProfile; 
     $totalPage = 0; 
     if(isset($_GET['xpage'])) { $xpage = $_GET['xpage']; } 
     $start = $xpage*SPP; 
     $end = $start+SPP; 
     include("protected/config.php"); 
     include("protected/class.db.php"); 
     include("protected/publicLang.php"); 

     $newSearch = new DB(); 
     $newSearch->query("SELECT username, university,bgroup, (SELECT COUNT(id) FROM donors) AS totalProfile FROM donors WHERE bgroup = :bgroup LIMIT " . $start . ", " . $end . " "); 
     $newSearch->exec(array(
      ":bgroup" => $_GET['groupname'] 
     )); 
     $data = $newSearch->fetch(); 
     foreach($data as $row) { 

      $totalProfile = $row['totalProfile']; 
     $content .= ' 
       <tr> 
       <td>' . $row['username'] . '</td> 
       <td>'.$row['university'].'</td> 
       <td>' . convertBloodIdPublic($row['bgroup']) . '</td> 
       <td><button class="btn btn-success">Contact</button></td> 
       </tr> '; 
     } 
     $totalPage = round($totalProfile/SPP); } 
?> 
<div class="container records"> 
<table> 
    <tr> 
    <th>--</th> 
    <th>--</th> 
    <th>--</th> 
    <th>--</th> 
    </tr> 
    <?php echo $content ?> 
</table> 
<ul class="pagination"> 
<?php 
    for($i=1; $i<=$totalPage; $i++) { 
     echo '<li><a href="<?php echo ' . $_SERVER['REQUEST_URI'] . '"&xpage"' . $i . ' ?>">' . $i . '</a></li>';} 
?> 
</ul> 
+1

あなたのリンク元URLを作成している方法が間違っていることをソースから見ると、はっきりとわかるはずです –

答えて

0

403は、あなたがもう許可されていないことを示します。おそらく、認証情報を渡す必要があります。これは、通常、裸のハイパーリンク/要素を介して行っているときに、URLを取得するのではなく、URLにPOSTINGすることによって行われます。

私はあなたが

<a href="javascript:submit_pagination($i);" > 

にコードを変更し、私はそれが動作するかもしれないと思う包み込む形にHIDDEN入力要素を追加し、ラインに沿って

function submit_pagination(i){ 
    document.forms[0].xpage.value = i; 
    document.forms[0].submit(); 
} 

をいくつかのJavaScriptを追加する場合を考えます。それが役に立てば幸い!

関連する問題