페이지 처리
본문
제가 관리하는 다른 사이트에서 글을 가져와서 리스트로 뿌려주려 합니다.
게시글은 잘 가져와지는데 페이징 처리가 안되네요.
10개씩 끈어서 페이징 처리를 하려고 하는데 20개는 끈어지는데
페이징을 어찌해야할지요 ㅠㅠ
<?php
/* Set to UTF-8 Encoding */
mysqli_query($conn, 'set session character_set_connection=utf8;');
mysqli_query($conn, 'set session character_set_results=utf8;');
mysqli_query($conn, 'set session character_set_client=utf8;');
/* Load data */
$query = 'SELECT * FROM g5_write_estimate ORDER BY wr_datetime DESC Limit 20';
$result = mysqli_query($conn, $query);
echo '<table><tr>' .
'<td>No</td>
<td>담당자</td>
<td>전화번호</td>
<td>클라이언트</td>
<td>날짜</td>' .
'</tr>';
while( $row = mysqli_fetch_array($result) ) {
echo '<tr><td>' . ++ $i . '</td>' .
'<td>' . $row['wr_subject'] . '</td>' .
'<td>' . $row['wr_4'] . '</td>' .
'<td>' . $row['wr_name'] . '</td>' .
'<td>' . $row['wr_datetime'] . '</td></tr>';
}
echo '</table>';
mysqli_close($conn);
?>
답변 2
페이지네이션은 구성하실려면, 아래와 같이 해주세요^^
--------------------------
이렇게 총갯수를 구하고,
'SELECT COUNT(*) AS cnt FROM g5_write_estimate'
$total_count = $row['cnt']; //데이터 갯수
--------------------------
페이지를 계산한뒤
$rows = 10; //한페이지에 나올 데이터개수
$total_page = ceil($total_count / $rows); // 전체 페이지 계산
if ($page < 1) { $page = 1; } // 페이지가 없으면 첫 페이지 (1 페이지)
$from_record = ($page - 1) * $rows; // 시작 열을 구함
--------------------------
해당 페이지의 데이터들을 가져옵니다.
'SELECT * FROM g5_write_estimate ORDER BY wr_datetime DESC Limit $from_record, $rows'
--------------------------
$total_page로 페이지 구성하시고, 페이지네이션에는 &page=페이지숫자
<a href="현재페이지.php?page=3">3</a>
GET 형식으로 넣어주시구요.
현재 보여주신 소스코드에는 페이지에 대한 내용이 없습니다.
혹시, 쿼리문에 20을 10으로 바꿔보세요
$query = 'SELECT * FROM g5_write_estimate ORDER BY wr_datetime DESC Limit 20';