Web application development ္ဘဖြိးတိုးတက်မြအတပဏ္ဌာန်တွင်အသုံးပြုသူစစ်မှန်ကြောင်းစစ်ဆေးခြင်းနှင့်ခွင့်ပြုချက်ထိန်းချုပ်မှုသည်စနစ်လုံခြုံရေးအတွက်သော့ချက်ဖြစ်သည်။ အသုံးပြုသူ authentication သည်တရားဝင်အသုံးပြုသူများသည်လျှောက်လွှာကို 0 င်ရောက်နိုင်ရန်သေချာသည်။ PHP ၏ built-in functions များဖြင့် developer များသည်ဤလုပ်ဆောင်မှုများကိုအလွယ်တကူအကောင်အထည်ဖော်နိုင်သည်။
အသုံးပြုသူ authentication သည်အသုံးပြုသူအမည်နှင့်စကားဝှက်ကိုစစ်ဆေးခြင်းအပါအ 0 င်အသုံးပြုသူ၏မည်သူမည်ဝါဖြစ်ကြောင်းအတည်ပြုခြင်းလုပ်ငန်းစဉ်ဖြစ်သည်။ PHP သည်စကားဝှက်များကိုစာဝှက်ခြင်းနှင့်စကားဝှက်စစ်ဆေးခြင်းကိုလုပ်ဆောင်ရန်အတွက် password_hash
နှင့် password_verify
ကဲ့သို့သောအဆင်ပြေသောလုပ်ဆောင်မှုများကိုပေးသည်။ PHP တွင်အသုံးပြုသူ authentication ကိုမည်သို့အကောင်အထည်ဖော်မည်ကိုပြသည့်ရိုးရှင်းသောဥပမာတစ်ခုမှာ -
// အသုံးပြုသူမှပေးသောအသုံးပြုသူအမည်နှင့်စကားဝှက်ကိုဒေတာဘေ့စ် $ username = _post ['username') တွင်သိမ်းထားသည်ဟုယူဆပါ။ $ စကားဝှက် = $ _post ['password']; // ဒေတာဘေ့စ် $ query မှအသုံးပြုသူအမည်နှင့်သက်ဆိုင်သောစကားဝှက်ကို quigning quige query quigner quign quign quigner quigner quigner quigner quigner quigner quigner quigner) $ ရလဒ် = MySQLI_QUERY ($ ဆက်သွယ်မှု, $ query); $ Row = MySQLI_FETT_AST_ASSOC ($ ရလဒ်); $ hashedpassword = $ Row ['password']; // အကယ်. စကားဝှက်သည်မှန်ကန်ကြောင်းအတည်ပြုရန် (စကားဝှက်) မှန်ကန်ကြောင်းစစ်ဆေးပါ။ // စကားဝှက်မှန်ကန်သည်, အသုံးပြုသူ authentication ကိုအောင်မြင်သည် // အသုံးပြုသူရဲ့ login status ကို setting session သို့မဟုတ် cookies စသကဲ့သို့ // သင်အသုံးပြုသူ၏ login status ကို set up နိုင်ပါတယ် // စကားဝှက်မှားသည်, authentication မအောင်မြင်ပါ။
ခွင့်ပြုချက်ထိန်းချုပ်မှုသည်၎င်းတို့၏အခန်းကဏ် on ပေါ် မူတည်. အချို့သောအရင်းအမြစ်များနှင့်လုပ်ငန်းလည်ပတ်မှုများကိုကန့်သတ်ရန်ဖြစ်သည်။ အောက်ပါကုဒ်ကသုံးစွဲသူ၏အခန်းကဏ်အပေါ်တွင် အခြေခံ. ဝင်ရောက်ခွင့်ကိုမည်သို့ထိန်းချုပ်ရမည်ကိုပြသသည်။
// အသုံးပြုသူ logged in 0 င်ရောက်သည်ဟုယူဆလျှင် login status ကို session တွင်သိမ်းဆည်းထားလျှင် (is us _ _ session ['user_id'])) $ userID = $ _session ['user_id'; // အသုံးပြုသူ၏ဒေတာဘေ့စအတွက် $ query တွင်ရှာဖွေခြင်း = "ID = '$ us userid' ကိုအသုံးပြုသောအသုံးပြုသူများထံမှအခန်းကဏ် questions ကိုရွေးချယ်ပါ။ $ ရလဒ် = MySQLI_QUERY ($ ဆက်သွယ်မှု, $ query); $ Row = MySQLI_FETT_AST_ASSOC ($ ရလဒ်); $ အခန်းကဏ် = = $ အတန်း ['role']; // အကယ်. ($ += '==' admin ') လျှင်အခန်းကဏ် asons ၏အခန်းကဏ် ason အရကွဲပြားခြားနားသောခွင့်ပြုချက်များကိုသတ်မှတ်ပါ။ // အုပ်ချုပ်ရေးမှူးတွင်ခွင့်ပြုချက်အားလုံး} ufts} uT ~ = $ roule == 'user') { // သာမန်အသုံးပြုသူများသည်အခြားစာမျက်နှာများကိုသာ 0 င်ရောက်နိုင်သည် // အခြားအခန်းကဏ် fements တွင်ခွင့်ပြုချက်မရှိပါ။ } အခြား // အသုံးပြုသူသည် log in ဝင်မ 0 င်ပါ။ login စာမျက်နှာသို့ခုန်သည်}
လက်တွေ့ကျသောအပလီကေးရှင်းများ၌အထက်ပါဥပမာများအပြင်၎င်းတို့ကိုလိုအပ်ချက်များအရပိုမိုကောင်းမွန်သောနှင့်တိုးချဲ့နိုင်သည်။ ဥပမာအားဖြင့်အသုံးပြုသူအခန်းကဏ် and နှင့်ခွင့်ပြုချက်များကိုဒေတာဘေ့စ်တွင်သိမ်းဆည်းထားနိုင်သည်။ ဒေတာဘေ့စ်မေးမြန်းချက်များမှတဆင့်ပုံမှန်ခွင့်ပြုချက်ကိုသတ်မှတ်နိုင်သည်။ ထို့အပြင် PHP Frameworks (ဥပမာ Larave) ကဲ့သို့သော authentication နှင့်ခွင့်ပြုချက်ယန္တရားကိုရိုးရှင်းစေနိုင်သည်။
PHP လုပ်ဆောင်ချက်များကိုဖြင့်အသုံးပြုသူများ၏ authentication နှင့်ခွင့်ပြုချက်ထိန်းချုပ်ရေးကိုအကောင်အထည်ဖော်နိုင်ပြီး developer များက 0 က်ဘ်အပလီကေးရှင်းများလုံခြုံရေးနှင့်တရားမ 0 င်လက်လှမ်းမီမှုများကိုကာကွယ်နိုင်သည်။ အကျိုးသင့်အကြောင်းသင့်ရှိသောစနစ်ဒီဇိုင်းနှင့်တိကျသောကုဒ်အကောင်အထည်ဖော်မှုသည်အသုံးပြုသူအတွေ့အကြုံနှင့်စနစ်လုံခြုံရေးကိုမြှင့်တင်ရန်သော့ချက်ဖြစ်သည်။ ဤဆောင်းပါးတွင်ပါ 0 င်သောသင်္ကေတများသည်အမှန်တကယ်စီမံကိန်းတွင်သင့်အားကူညီလိမ့်မည်ဟုမျှော်လင့်ပါသည်။