<?php
// 총 게시글 개수를 구하기
$lengthSql = "select COUNT(*) from educommunity e";
$stmt = $dbconn->prepare($lengthSql);
$stmt->execute();
$row = $stmt->fetch();
$count = $row['count'];
//페이지 길이 - 게시글 갯수 / 8 소수점 올림
$length = ceil($count / 8);
//페이지 블럭의 이전 이후 조건(이전이나 이후를 눌렀을때 해당 블럭의 첫번째 페이지로 넘어가도록 했음)
if($_GET['page'] % 2 == 0){
$prevPage = $_GET['page'] - 3;
} else{
$prevPage = $_GET['page'] - 2;
}
if($_GET['page'] % 2 == 0){
$nextPage = $_GET['page'] + 1;
} else{
$nextPage = $_GET['page'] + 2;
}
// 시작 페이지는 현재 페이지 / 2의 나머지에서 -1이 현재 페이지 블럭. 현재 페이지 블럭 * 페이지수(2) + 1
$startPage = (ceil($_GET['page'] / 2) - 1) * 2 + 1;
// 마지막 페이지는 현재 페이지 블럭 * 2. 마지막 페이지가 페이지 총 길이보다 크면 두개가 동일한 값이 되도록
$endPage = ceil($_GET['page'] / 2) * 2;
if($endPage >= $length){
$endPage = $length;
}
// offset값 = (현재 페이지 넘버 -1) * 8
$num = ($_GET['page'] - 1) * 8;
$pageSql = "select * from educommunity e order by ec_regdt asc LIMIT 8 offset '{$num}'";
$stmt = $dbconn->prepare($pageSql);
$stmt->execute();
$rows = $stmt->fetchAll();
?>
<p>
<a href="/board/board.php?page=1">처음으로</a>
<?php
if($_GET['page'] > 2){
?>
<a href="/board/board.php?page=<?php echo $prevPage; ?>">이전</a>
<?php };?>
<?php
for($page = $startPage; $page <= $endPage; $page++){
?>
<a href="/board/board.php?page=<?php echo $page; ?>"><?php echo $page; ?></a>
<?php };?>
<?php
if($_GET['page'] < $length){
?>
<a href="/board/board.php?page=<?php echo $nextPage; ?>">다음</a>
<?php }
?>
<a href="board.php?page=<?php echo ceil($length);?>">마지막으로</a>
</p>