From dfef38022a6ef46916f67bd33274ddb9d7b7ee08 Mon Sep 17 00:00:00 2001 From: Haidar <16521522@mahasiswa.itb.ac.id> Date: Thu, 16 Nov 2023 05:57:27 +0700 Subject: [PATCH] feat: prevent sql injection --- api/auth/Login.php | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/api/auth/Login.php b/api/auth/Login.php index 8e4dd3e..19b08b9 100644 --- a/api/auth/Login.php +++ b/api/auth/Login.php @@ -5,18 +5,20 @@ include "../../config/config.php"; include "../../app/core/database.php"; $key = "mahasiswa_leveling"; - $username = $_POST['username']; -$uen_password = $_POST['password']; -$password = openssl_encrypt($uen_password, "AES-256-CBC", $key, 0, substr(md5($key), 0, 16)); - +$password = $_POST['password']; +// $password = openssl_encrypt($uen_password, "AES-256-CBC", $key, 0, substr(md5($key), 0, 16)); $conn = Database::getInstance(); +$query = "SELECT * FROM users WHERE username = ?"; +$stmt = $conn->prepare($query); +$stmt->bind_param("s", $username); +$stmt->execute(); +$result = $stmt->get_result(); +$data = $result->fetch_assoc(); +$hashPassword = $data['password']; -$result = $conn->query("SELECT * FROM users WHERE username = '$username' AND password = '$password'"); - -if ($result->num_rows > 0) { +if (password_verify($password, $hashPassword)) { $_SESSION['username'] = $username; // Menyimpan username dalam sesi - $data = $result->fetch_assoc(); $_SESSION['isAdmin'] = $data['isAdmin']; // Menyimpan isAdmin dalam sesi echo 'success'; } else { -- GitLab