Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- $method = $_SERVER['REQUEST_METHOD'];
- $request = isset($_GET['request']) ? $_GET['request'] : "";
- $uri = explode("/", $request);
- $api = isset($uri[0]) ? $uri[0] : "";
- $id = isset($uri[1]) ? intval($uri[1]) : 0;
- $dbh = new PDO("mysql:host=localhost; dbname=restful; charset=utf8","root","");
- $listperpage = 10;
- if( $api == "friend" ) {
- if( $method == "GET" ) {
- $page = isset($_GET['page']) ? intval($_GET['page']) : 1;
- if( ! $page ) $page = 1;
- $start = ($page - 1) * $listperpage;
- $sql = "SELECT * FROM friends";
- if( $id ) $sql .= " WHERE id={$id}";
- if( ! $id ) $sql .= " LIMIT {$start}, {$listperpage}";
- if( $res = $dbh->query($sql) ) {
- $friends = $res->fetchAll(PDO::FETCH_ASSOC);
- echo json_encode($friends);
- }
- } elseif ($method == "POST") {
- $result = array("success"=>"false", "count"=>0);
- $name = isset($_POST['name']) ? $_POST['name'] : "";
- $city = isset($_POST['city']) ? $_POST['city'] : "";
- $phone = isset($_POST['phone']) ? $_POST['phone'] : "";
- $email = isset($_POST['email']) ? $_POST['email'] : "";
- if( $name && $city && $phone && $email ) {
- $sql = "INSERT INTO friends(name, city, phone, email) ";
- $sql .= " VALUES('{$name}','{$city}','{$phone}','{$email}')";
- if( $res = $dbh->query($sql) ) {
- $count = $res->rowCount();
- if( $count ) {
- $result['success'] = "true";
- $result['count'] = $count;
- }
- }
- }
- echo json_encode($result);
- } elseif ($method == "PUT") {
- $result = array("success"=>"false", "count"=>0);
- if( $id ) {
- $putData = file_get_contents("php://input");
- $data = array();
- parse_str($putData, $data);
- if( $data['name'] && $data['city'] && $data['phone'] && $data['email'] ) {
- $sql = "UPDATE friends SET ";
- $sql .= " name='{$data['name']}' ";
- $sql .= ", city='{$data['city']}' ";
- $sql .= ", phone='{$data['phone']}' ";
- $sql .= ", email='{$data['email']}' ";
- $sql .= " WHERE id={$id}";
- if( $res = $dbh->query($sql) ) {
- $count = $res->rowCount();
- if( $count ) {
- $result['success'] = "true";
- $result['count'] = $count;
- }
- }
- }
- }
- echo json_encode($result);
- } elseif ($method == "DELETE") {
- $result = array("success"=>"false", "count"=>0);
- if( $id ) {
- $sql = "DELETE FROM friends WHERE id={$id}";
- if( $res = $dbh->query($sql) ) {
- $count = $res->rowCount();
- if( $count ) {
- $result['success'] = "true";
- $result['count'] = $count;
- }
- }
- }
- echo json_encode($result);
- }
- } elseif( $api == "pages" ) {
- if( $method == "GET" ) {
- $pages = 0;
- $total = 0;
- $sql = "SELECT count(*) as cnt FROM friends";
- if( $res = $dbh->query($sql) ) {
- $data = $res->fetch();
- $total = $data['cnt'];
- }
- if( $total) {
- $pages = ceil($total/$listperpage);
- }
- $result = array("total"=>$total, "pages"=>$pages);
- echo json_encode($result);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement