Mini Shell

Direktori : /var/www/vhosts/ccp.ac.th/backup_full/httpdocs/fertilizer/
Upload File :
Current File : /var/www/vhosts/ccp.ac.th/backup_full/httpdocs/fertilizer/login_go.php

<?php
    // ปิดการแสดง Error ของ PHP ออกทางหน้าจอ และเปิด Buffer ป้องกัน JSON เสียหาย
    error_reporting(0); 
    ob_start(); 

    include 'db/database.php';
    
    // Username ป้องกัน SQL Injection ตามปกติ
    $username = mysqli_real_escape_string($link, $_POST['username']);
    
    // ❗ Password รับค่าดิบๆ ห้ามใส่ mysqli_real_escape_string หรือ trim เด็ดขาด ❗
    $password = $_POST['password']; 
    
    $salt = 'tikde78uj4ujuhlaoikiksakei896';
    $hash_login_password = hash_hmac('sha256', $password, $salt);
   
    $sql = "SELECT * FROM user WHERE username='$username' AND password='$hash_login_password'";
    $result = mysqli_query($link, $sql);
    
    $response = array();

    if($result && mysqli_num_rows($result) === 1){
        $row_user = mysqli_fetch_array($result, MYSQLI_ASSOC);
        
        // เช็คสถานะการใช้งาน
        if($row_user['login_status'] != '100'){
            $response = array('status' => 'danger', 'message' => 'บัญชีนี้ถูกระงับการใช้งาน กรุณาติดต่อผู้ดูแลระบบ');
        } else {
            // เช็ค Session และเข้าสู่ระบบ
            if (session_status() === PHP_SESSION_NONE) {
                session_start();
            }
            $_SESSION['user_id'] = $row_user['user_id'];      
            $_SESSION['username'] = $row_user['username'];
            
            $response = array('status' => 'success');
        }
    } else {
        $response = array('status' => 'danger', 'message' => 'Username หรือ Password ไม่ถูกต้อง');
    }
    
    mysqli_close($link);

    // ล้าง Buffer ขยะทิ้งทั้งหมด แล้วค่อยพ่นแค่ JSON ออกไป
    ob_end_clean(); 
    header('Content-Type: application/json; charset=utf-8');
    echo json_encode($response);
    exit();
?>

Zerion Mini Shell 1.0