私の現在の改ページコードは、このhtaccessを使用してURL書き換えを使用できるようにページングURLを設定するにはどうすればよいですか?
//what page are we currently on
if(!isset($_GET['page'])){
$page=1;
}
else {
$page=(int)$_GET['page'];
}
//select how many records to show per page
$limit=10;
//count how many rows
$total=$conn->query("SELECT COUNT(*) FROM pagi")->fetchColumn();
//how many pages will be there
$pages=ceil($total/$limit);
if($page<1){
$page=1;//forcing page to be 1 if it is less then 1
}
else if($page>$pages){
$page=$pages;
}
//calculate the offset
$offset=($page-1)*$limit;
//fetch the result from database
$sql=$conn->prepare("SELECT * FROM pagi ORDER BY pg_id LIMIT {$limit} OFFSET {$offset}");
$sql->execute();
if($sql->rowCount()>0){
while($result=$sql->fetch(PDO::FETCH_ASSOC)){;
echo $result['pg_name'],"<br />";
}
echo "<hr>";
}else {
echo "no result to fetch";
}
$prev=$page-1;
$next=$page+1;
$previous="";
$nextr="";
if($page>1){
$previous='<li><a href="?page='.$prev.'">«</a></span>';
}
//for($i=1;$i<=$pages;$i++){
// echo'<a href="?page='.$i.'">'.$i.'</a>';
// }
if($page<$pages){
$nextr='<li><a href="?page='.$next.'">»</a></span>';
}
$numbers="";
for($i = max(1, $page - 5); $i <= min($page + 5, $pages); $i++){
if($i==$page){
$numbers.='<li><a class="active" href="?page='.$i.'">'.$i.'</a></span></li>';
}
else {
$numbers.='<li><a href="?page='.$i.'">'.$i.'</a></span></li>';
}
}
のように見え、私の現在のURLは、このようになります - localhost/test/pagi.php?page=1
I want it to be
localhost/test/pagi.php/page/1
私は私の.htaccess
RewriteEngine on RewriteRule ^page/([a-zA-Z0-9-/]+)$ pagi.php?page=$1
で、この次を持っています
上記の書き換えルールまたは別のルールを使用するようにページングを変更するにはどうすればよいですか。それはpagi.php/page/123
にないpagi.php?page=1
に にそれらをリダイレクトする必要があるときにユーザーがクリック次に私は素晴らしいことだ
私は '/test/pagi.php?page = 1'から'/test/pagi.php/page/1 'に私のURLを変更していません –
この変換は別の方法で動作します'/ test/pagi.php/page/1'を' /test/pagi.php?page = 1'に変更します。あなたのApacheはmod_rewriteモジュールで設定されていますか? – macl
はい私のapacheはmod_rewriteモジュールで設定されています –