목록 페이지에서 더보기 버튼을 누르면 글을 더 가지고 오는 API를 만든다.
<?php
header('Content-Type: application/json');
// 로그인 체크
session_start();
if (isset($_SESSION['member_id']) === false){
echo json_encode(array('result' => false));
exit();
}
// 파라미터 체크
$last_post_id = isset($_POST['last_post_id']) ? $_POST['last_post_id'] : null;
if ($last_post_id == null){
echo json_encode(array('result' => false));
exit();
}
// DB Require
require_once("inc/db.php");
$member_id = $_SESSION['member_id'];
$post_query = "select post_id, post_content from tbl_post where member_id = :member_id and post_id < :post_id order by insert_date desc limit 10";
$post_data = db_select($post_query, array("member_id"=> $member_id, "post_id" => $last_post_id));
echo json_encode(
array(
'result' => true,
'post_data' => $post_data
)
);
위 코드를 list.api.php 파일로 저장한다.
로그인, 파라미터 검증 후에 글 목록 데이터를 데이터베이스 테이블 tbl_post에서 가지고 온다.
$member_id = $_SESSION['member_id'];
$post_query = "select post_id, post_content from tbl_post where member_id = :member_id and post_id < :post_id order by insert_date desc limit 10";
$post_data = db_select($post_query, array("member_id"=> $member_id, "post_id" => $last_post_id));
조건은 현재 로그인한 사용자의 글, 그리고 마지막 메모 ID보다 PK가 작은 경우다.
where member_id = :member_id and post_id < :post_id
데이터 정렬은 입력의 역순으로 한다.
order by insert_date desc
총 10개까지만 데이터를 가지고 온다.
Copylimit 10