サポート » 使い方全般 » ページング処理

  • wordpress+jqueryでサイトを構築しているのですが、ページング処理がうまく行きません。困っているので助言をお願いします。。

    <?php
    		$page=$_REQUEST['page'];
    		if($page==''){
    			$page=1;
    			}
    		$page=max($page, 1);
    		$start=($page-1)*10;
    
    		print($page);
    
    		$sql='SELECT COUNT(*) AS cnt FROM line';
    		$recordset=mysqli_query($db,	$sql);
    		$table=mysqli_fetch_assoc($recordset);
    		$maxpage=ceil($table['cnt']/10);
    		$page=min($page,	$maxpage);
    
    		print($page);
    
    		$start=($page-1)*10;
    		$start=max(0,$start);
    		?>
        <?php
        	$sql=sprintf('SELECT * FROM line ORDER BY id DESC LIMIT %d,10',$start);
    		$posts=mysqli_query($db,	$sql)	or	die(mysqli_error($db));
    	?>
        <?php
    		while($post=mysqli_fetch_assoc($posts)):
    		?>
         	<div class="post">
            	<?php
    				echo	htmlspecialchars($post['username'],	ENT_QUOTES,	'UTF-8');
    				?>
                <?php
    				echo	htmlspecialchars($post['lineid'], ENT_QUOTES,	'UTF-8');
    			?>
            	<?php
    				echo	htmlspecialchars($post['address'],	ENT_QUOTES,	'UTF-8');
    				?>
                <?php
    				echo	htmlspecialchars($post['age'], ENT_QUOTES,	'UTF-8');
    			?>
            	<?php
    				echo	htmlspecialchars($post['comment'],	ENT_QUOTES,	'UTF-8');
    				?>
    		</div>
            <?php
    			endwhile;
    			?>
                <ul class="paging">
                <?php
    			if($page>1){
    			?>
                <li><a href="<?php the_permalink(); ?>?page=<?php	print($page-1); ?>">prev</a></li>
                <?php
    			}else{
    			?>
                <li>prev</li>
                <?php
    			}
    			?>
                <?php
    			if($page<$maxpage){
    			?>
                <li><a href="<?php the_permalink(); ?>?page=<?php	print($page+1); ?>">Next</a></li>
                <?php
    			}else{
    			?>
                <li>Next</li>
                <?php
    			}
    			?>
                </ul>

    状況としては、1ページ目はNextボタンが押せ、Prevボタンは押せない状態で、Nextボタンを押すと、URLのパラメーターは2に増えるのですが、引っ張ってくるDBのレコードは1ページ目と同じ内容の10件で、Prevボタンが押せません。さらにNextを押しても3ページ目に遷移せず、URLのパラメータも2のママです。

1件の返信を表示中 - 1 - 1件目 (全1件中)
  • モデレーター Daisuke Takahashi

    (@extendwings)

    WordPressではmysqli_*()より、WPDBを使った方が楽かと。

    $pageを出力しているようですが、$startなども確認してみた方がいいかもしれませんね。
    WordPressではなく普通のPHPの範囲なので、あとはほかのところで聞いてください。

1件の返信を表示中 - 1 - 1件目 (全1件中)
  • トピック「ページング処理」には新たに返信することはできません。