DEV Community

Bagus Raffi Santoso
Bagus Raffi Santoso

Posted on

RestAPI

NAME: Bagus Raffi Santoso
NIM: A11.2021.1310
<?php

$file_db = "kospakbudi.db";

try {
$pdo = new PDO("sqlite:$file_db");
$pdo ->setAttribute(PDO::ATTR_ERRMODE, PDO:: ERRMODE_EXCEPTION);
$pdo ->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);

$sql_create = "CREATE TABLE IF NOT EXISTS 'KOS_PAK_BUDI' (
    'id' integer NOT NULL PRIMARY KEY AUTOINCREMENT,
    'username' text NOT NULL,
    'password' text NOT NULL,
    'created_at' datetime NOT NULL DEFAULT CURRENT_TIMESTAMP)";
$pdo -> exec($sql_create);
Enter fullscreen mode Exit fullscreen mode

}
catch(PDOException $e){
throw new PDOException($e->getMessage(), (int)$e->getCode());
}

header ('Content-Type: application/json');

if ($_SERVER['REQUEST_METHOD']=='GET') {
$query = 'select * from kospakbudi order by created_at desc';
$stmt = $pdo->prepare($query);
$stmt ->execute();
$data = $stmt->fetchALL(PDO::FETCH_ASSOC);
echo json_encode($data);
} elseif ($_SERVER['REQUEST_METHOD']=='POST'){
$username = $_POST['username'];
$query = "insert into kospakbudi (username, password) values (?, ?)";
$stmt = $pdo->prepare($query);
$res = $stmt->execute([$username, $password]);
if($res) {
$data = ['username'=>$username,'password'=>$password];
echo json_encode($data);
} else {
echo json_encode(['error'=>$stmt->errorCode()]);
}
}

elseif ($_SERVER['REQUEST_METHOD'] === 'DELETE') {
$id = $_GET['id'];
$query = "delete from kospakbudi whre id = ?";
$stmt = $pdo->prepare($query);
$res = $stmt->execute([$id]);
if($res) {
$data = ['id'==$id];
echo json_encode($data);
} else {
echo json_encode(['error'=>$stmt->errorCode()]);
}
}

Top comments (0)