လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> CMS စနစ်၏အသုံးပြုသူ login function ကိုအကောင်အထည်ဖော်ရန်အတွက်အပြည့်အစုံသင်ခန်းစာ

CMS စနစ်၏အသုံးပြုသူ login function ကိုအကောင်အထည်ဖော်ရန်အတွက်အပြည့်အစုံသင်ခန်းစာ

M66 2025-07-17

အသုံးပြုသူ login မှတ်တမ်းဒေတာဘေ့စ်စားပွဲတစ်ခုဖန်တီးပါ

အသုံးပြုသူလော့ဂ်အင်မှတ်တမ်းလုပ်ဆောင်မှုကိုသိရှိရန်သင်အသုံးပြုသူ login အချက်အလက်များကိုသိမ်းဆည်းရန်ဒေတာဘေ့စ်ရှိသက်ဆိုင်ရာစားပွဲတစ်ခုကိုဖန်တီးရန်လိုအပ်သည်။ ဤနေရာတွင် MySQL ကို POWIN_LOGS အမည်ရှိစားပွဲတစ်ခုအပါအ 0 င် 0 င်ငွေ, 0 င်ရောက်သည့် IP နှင့် login time အပါအ 0 င်စားပွဲတစ်ခုကိုဖန်တီးရန်ဥပမာတစ်ခုအဖြစ်ယူပါ။

 CREATE TABLE login_logs (
    id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    user_id INT,
    ip_address VARCHAR(45),
    login_time DATETIME
);

စားပွဲတင်ဖွဲ့စည်းပုံသည်တိကျပြီးရှင်းလင်းပြီးအသုံးပြုသူများအတွက် login တစ်ခုစီ၏အဓိကအချက်အလက်များကိုထိရောက်စွာသိမ်းဆည်းထားနိုင်သည်။

logging function ကိုအကောင်အထည်ဖော်ပါ

အသုံးပြုသူသည်အောင်မြင်စွာဝင်ရောက်ပြီးပါကလော့အင်အချက်အလက်ကိုဒေတာဘေ့စ်သို့အချိန်မီရေးသားရန်လိုအပ်သည်။ အောက်ပါ PHP function logogin သည် ဤလုပ်ဆောင်မှုကိုမည်သို့အကောင်အထည်ဖော်ရမည်ကိုပြသသည်။

 // အသုံးပြုသူ login မှတ်တမ်းမှတ်တမ်းတင်ပါ
function logLogin($userId, $ipAddress) {
    // ဒေတာဘေ့စ်ကိုဆက်သွယ်ပါ
    $conn = new mysqli("localhost", "username", "password", "database");

    // လက်ရှိအချိန်ကိုရယူပါ
    $loginTime = date('Y-m-d H:i:s', time());

    // ဆောက်လုပ်ပုံSQLအသေအချာပေြာဆိုချက်
    $sql = "INSERT INTO login_logs (user_id, ip_address, login_time)
            VALUES ('$userId', '$ipAddress', '$loginTime')";

    // ကရိယာတန်းဆာSQLအသေအချာပေြာဆိုချက်
    $conn->query($sql);

    // ဒေတာဘေ့စ် connection ကိုပိတ်ပါ
    $conn->close();
}

// အသုံးပြုမှုဥပမာ
$userId = 1;
$ipAddress = $_SERVER["REMOTE_ADDR"]; // လက်ရှိအသုံးပြုသူကိုရယူပါIPစကားပေြာဟော
logLogin($userId, $ipAddress);

ဤလုပ်ဆောင်မှုတွင်ပထမ ဦး ဆုံးဒေတာဘေ့စ် connection ကိုတည်ထောင်ပါ, ထို့နောက်လက်ရှိစနစ်အချိန်ကိုရယူပါ။ နောက်ဆုံးတွင်အသုံးပြုသူ ID, IP address ကိုထည့်ပြီး login စံချိန်ကိုဖြည့်စွက်ရန် log in table ထဲသို့ထည့်ပါ။

query user login log

user login status ကိုကြည့်ရှုရန်အုပ်ချုပ်ရေးမှူးများကိုအထောက်အကူပြုရန်အတွက်အောက်ပါ Getloginlogs function သည်သတ်မှတ်ထားသောအသုံးပြုသူ login မှတ်တမ်းကိုမေးမြန်းခြင်း၏လုပ်ဆောင်မှုကိုပေးသည်။

 // Query login log
function getLoginLogs($userId) {
    // ဒေတာဘေ့စ်ကိုဆက်သွယ်ပါ
    $conn = new mysqli("localhost", "username", "password", "database");

    // ဆောက်လုပ်ပုံSQLအသေအချာပေြာဆိုချက်
    $sql = "SELECT * FROM login_logs WHERE user_id = '$userId'";

    // ကရိယာတန်းဆာSQLမေးမြန်း
    $result = $conn->query($sql);

    // 处理မေးမြန်း结果
    if ($result->num_rows > 0) {
        while ($row = $result->fetch_assoc()) {
            // output ကိုမှတ်တမ်းသတင်းအချက်အလက်
            echo "ID: " . $row["id"] . "<br>";
            echo "User ID: " . $row["user_id"] . "<br>";
            echo "IP Address: " . $row["ip_address"] . "<br>";
            echo "Login Time: " . $row["login_time"] . "<br><br>";
        }
    } else {
        echo "No login logs found.";
    }

    // ဒေတာဘေ့စ် connection ကိုပိတ်ပါ
    $conn->close();
}

// အသုံးပြုမှုဥပမာ
$userId = 1;
getLoginLogs($userId);

ဤလုပ်ဆောင်ချက်သည်သတ်မှတ်ထားသောအသုံးပြုသူ၏ login မှတ်တမ်းများအားလုံးကိုဒေတာဘေ့စ်ရှာဖွေမှုကိုမှတစ်ဆင့်ရယူပြီး၎င်းတို့အားတစ် ဦး အားတစ်ခုမှတစ်ခုမှထုတ်ပေးသည်။

အကျဉ်းချုပ်

အထက်ပါအဆင့်များမှတဆင့်မှတ်တမ်းသိုလှောင်မှုနှင့်စုံစမ်းမှုအပါအ 0 င်အခြေခံအသုံးပြုသူ login logining function ကိုအကောင်အထည်ဖော်ပြီးပြီ။ ဤအင်္ဂါရပ်သည် 0 ဘ်ဆိုဒ်လုံခြုံရေးစီမံခန့်ခွဲမှုကိုအထောက်အကူပြုရုံသာမကနောက်ဆက်တွဲအသုံးပြုသူအပြုအမူခွဲခြမ်းစိတ်ဖြာမှုအတွက်ဒေတာအထောက်အပံ့ကိုလည်းထောက်ပံ့ပေးသည်။ developer များသည် log filtering, တင်ပို့ခြင်းသို့မဟုတ်စာရင်းအင်းခွဲခြမ်းစိတ်ဖြာခြင်းစသည့်အမှန်တကယ်လိုအပ်ချက်နှင့်အညီသူတို့၏လုပ်ဆောင်မှုများကိုထပ်မံတိုးချဲ့နိုင်သည်။