From e437574c58c6ec90e7932580c10ab7eb89ff8f5b Mon Sep 17 00:00:00 2001 From: IceTeaXXD <13521024@std.stei.itb.ac.id> Date: Wed, 15 Nov 2023 20:30:07 +0700 Subject: [PATCH] feat: user info endpoint --- api/profile/info.php | 23 +++++++++++++++++++++++ app/models/user.php | 22 ++++++++++++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 api/profile/info.php diff --git a/api/profile/info.php b/api/profile/info.php new file mode 100644 index 0000000..c74cde6 --- /dev/null +++ b/api/profile/info.php @@ -0,0 +1,23 @@ +<?php +require_once '../../app/core/App.php'; +require_once '../../app/core/Database.php'; +require_once '../../app/models/User.php'; +require_once '../../config/config.php'; + +session_start(); + +$user = new User(); + +if (isset($_GET['userid'])) { + $user_id = $_GET['userid']; + $exec = $user->getUserById($user_id); + if (!$exec) { + echo json_encode(array("error" => "No user found")); + exit(); + } + $name = $user->getName(); + $email = $user->getEmail(); + echo json_encode(array("name" => $name, "email" => $email)); +} else { + echo json_encode(array("error" => "No user id provided")); +} diff --git a/app/models/user.php b/app/models/user.php index 33de323..70441be 100644 --- a/app/models/user.php +++ b/app/models/user.php @@ -173,6 +173,28 @@ class User{ } } + public function getUserById($userid) { + $query = "SELECT user_id, name, role, email, password FROM $this->table WHERE user_id = ?"; + $stmt = $this->db->setSTMT($query); + mysqli_stmt_bind_param($stmt, "s", $userid); + $exists = mysqli_stmt_execute($stmt); + if(!$exists){ + /* Tidak ada usernya */ + return $exists; + }else{ + /* Ambil hasilnya */ + $result = mysqli_stmt_get_result($stmt); + $row = mysqli_fetch_array($result); + if($row){ + $this->role = $row['role']; + $this->name = $row['name']; + $this->email = $row['email']; + $this->userID = $row['user_id']; + return true; + } + } + } + public function createresettoken($email, $token) { $query = "UPDATE $this->table SET reset_token = ? WHERE email = ?"; $stmt = $this->db->setSTMT($query); -- GitLab