လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> PHP Development တွင်ထိရောက်သော data filtering function များကိုမည်သို့အကောင်အထည်ဖော်ရမည်နည်း။ Front-end နှင့်နောက်ခံစွမ်းရည်များ

PHP Development တွင်ထိရောက်သော data filtering function များကိုမည်သို့အကောင်အထည်ဖော်ရမည်နည်း။ Front-end နှင့်နောက်ခံစွမ်းရည်များ

M66 2025-06-18

PHP Development တွင်ထိရောက်သော data filtering function များကိုမည်သို့အကောင်အထည်ဖော်ရမည်နည်း။ Front-end နှင့်နောက်ခံစွမ်းရည်များ

ဒေတာစီစစ်ခြင်းသည် PHP ဖွံ့ဖြိုးတိုးတက်ရေးကာလအတွင်းအလွန်အရေးကြီးသောလုပ်ငန်းတစ်ခုဖြစ်သည်။ ဒေတာစီစစ်ခြင်းသည်အန္တရာယ်ရှိသည့်တိုက်ခိုက်မှုများ, အချက်အလက်များအားဆေးထိုးခြင်းကဲ့သို့သောလုံခြုံရေးဆိုင်ရာအန္တရာယ်များကိုထိရောက်စွာကာကွယ်နိုင်သည်။ ဤဆောင်းပါးသည်များသောအားဖြင့်အသုံးပြုသောဒေတာစီစစ်ခြင်းနည်းလမ်းအချို့ကိုမိတ်ဆက်ပေးပြီးသတ်သတ်မှတ်မှတ်ကုဒ်များကိုဥပမာပေးသည်။

filtering input ကို filtering

Input filtering သည်မှားယွင်းသောအချက်အလက်များကိုမမှန်ကန်တဲ့အချက်အလက်များကိုကာကွယ်ခြင်းကိုကာကွယ်ရန်သုံးစွဲသူများမှထည့်သွင်းထားသောအချက်အလက်များကိုစစ်ဆေးခြင်းနှင့်သန့်ရှင်းရေးကိုရည်ညွှန်းသည်။ ဤတွင်အများအပြား bappy filtering နည်းလမ်းအများအပြားရှိပါတယ်:

1.1 ။ Front-end စိစစ်အတည်ပြု

Front-End Verification သည်အသုံးပြုသူမတင်ပြမီ JavaScript နှင့်အခြားနည်းလမ်းများမှအချက်အလက်များကိုစစ်ဆေးရန်ရည်ရွယ်သည်။ ဤစစ်ဆေးမှုနည်းလမ်းသည်အသုံးပြုသူအတွေ့အကြုံကိုတိုးတက်စေပြီးဆာဗာတွင်ဝန်ထုပ်ဝန်ပိုးကိုလျှော့ချနိုင်သည်။ ဥပမာအားဖြင့်အသုံးပြုသူများမှတင်သွင်းသောပုံစံအချက်အလက်များအတွက် input ၏ပုံစံနှင့်ကိုက်ညီမှုရှိမရှိစစ်ဆေးရန်ပုံမှန်အသုံးအနှုန်းများကိုသင်အသုံးပြုနိုင်သည်။

ဤတွင်စာတိုက်ပုံးပုံစံကိုအတည်ပြုရန် JavaScript ကိုအသုံးပြုခြင်း၏ဥပမာတစ်ခုဖြစ်သည်။

<form action="submit.php" method="post">
  <input type="email" name="email" id="email" required>
  <input type="submit" value="နားထောင်">
</form>

<script>
document.getElementById('email').addEventListener('input', function() {
    var value = this.value;
    var regex = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,4}$/;
    if (!regex.test(value)) {
        this.setCustomValidity('ကျေးဇူးပြု။ မှန်ကန်သောအီးမေးလ်လိပ်စာတစ်ခုဖြည့်ပါ');
    } else {
        this.setCustomValidity('');
    }
});
</script>

1.2 ။ အတည်ပြုအတည်ပြု

Back-end Verification သည်ဆာဗာဘက်မှအချက်အလက်များကိုအတည်ပြုခြင်းနှင့်စစ်ထုတ်ခြင်းများကိုရည်ညွှန်းသည်။ ဤအတည်ပြုနည်းသည်ယုံကြည်စိတ်ချရဆုံးနည်းဖြစ်သောကြောင့်အသုံးပြုသူများသည် server-side verification အစီအမံများကိုကျော်လွှားနိုင်ခြင်းမရှိသောကြောင့်ဖြစ်သည်။ ဤတွင်အသုံးပြုသော backend စိစစ်အတည်ပြုနည်းလမ်းများအများအပြားရှိပါတယ်:

1.2.1 ။ filter_var function ကိုအသုံးပြုခြင်း

PHP သည်အချက်အလက်များကိုစစ်ထုတ်ခြင်းနှင့်အတည်ပြုရန် filter_var function ကိုထောက်ပံ့ပေးသည်။ တိကျသောအသုံးပြုမှုနည်းလမ်းမှာအောက်ပါအတိုင်းဖြစ်သည် -

$ အီးမေးလ် = $ _post [&#39;email&#39;];
if (filter_var ($ အီးမေးလ်, filter_valka_emaima))
    // အီးမေးလ် format တုပစစ်ဆေးမှု} အခြား
    // အီးမေးလ်ပုံစံစစ်ဆေးခြင်းမအောင်မြင်ပါ။

1.2.2 ။ ပုံမှန်အသုံးအနှုန်းများကိုအသုံးပြုခြင်း

ပုံမှန်အသုံးအနှုန်းများကိုအဆင့်မြင့်စိစစ်အတည်ပြုခြင်းနှင့်ကြိုးများကိုစစ်ထုတ်ခြင်းပြုလုပ်ရန်အသုံးပြုနိုင်သည်။ လက်ကိုင်ဖုန်းနံပါတ်များကိုအတည်ပြုရန်ပုံမှန်အသုံးအနှုန်းများကိုအသုံးပြုခြင်း၏ဥပမာတစ်ခုမှာ -

$ ဖုန်း = $ _post [&#39;Phone&#39;];
$ pattern = &#39;/ ^ 1 [3456789] \ d {9} $ /&#39;;
အကယ်. (Preg_match ($ ပုံစံ, $ ဖုန်း))
    // မိုဘိုင်းဖုန်းနံပါတ်သည်အခြားသူဖြစ်သည်
    // လက်ကိုင်ဖုန်းနံပါတ်စိစစ်အတည်ပြုမှုမအောင်မြင်ပါ။

output ကို filtering

Output filtering သည် XSS တိုက်ခိုက်မှုများကိုကာကွယ်ရန်ရှေ့ပြေးအဆုံးသို့မပြုလုပ်မီအချက်အလက်များကိုသန့်ရှင်းရေးလုပ်ရန်နှင့်ထွက်ပြေးရန်ရည်ရွယ်သည်။ ဤတွင်အများအပြားဘုံ output filtering နည်းလမ်းများရှိပါတယ်:

2.1 ။ htmlspecialchars function ကိုသုံးပါ

htmlspecialchars function သည်အထူးအက္ခရာများကို HTML အဖွဲ့အစည်းများသို့လွတ်မြောက်ရန်, တိကျသောအသုံးပြုမှုနည်းလမ်းမှာအောက်ပါအတိုင်းဖြစ်သည် -

$ အမည် = &#39;&#39; <script>alert("XSSတိုက်ခိုက်ခြင်း")</script> &#39;&#39;;
ပဲ့တင်သံ htmlspecialchars ($ အမည်);

2.2 ။ htmlenties function ကိုသုံးပါ

htmlenties function သည် htmlspecialchars function နှင့်ဆင်တူသော HTML အဖွဲ့အစည်းများသို့အထူးအက္ခရာများမှလွတ်မြောက်နိုင်သည်။ ခြားနားချက်မှာ htmlenties function များသည်အထူးအက္ခရာများကိုအဖွဲ့အစည်းများသို့ပိုမိုလွတ်မြောက်စေပြီးဇာတ်ကောင် encoding ကိုဖော်ပြရန်ဖြစ်သည်။ တိကျသောအသုံးပြုမှုနည်းလမ်းမှာအောက်ပါအတိုင်းဖြစ်သည် -

$ အမည် = &#39;&#39; <script>alert("XSSတိုက်ခိုက်ခြင်း")</script> &#39;&#39;;
ပဲ့တင်သံ htmlenties ($ အမည်, ent_quotes, &#39;UTF-8&#39;);

အထက်ပါဥပမာများအပြင် URL parametersters များကိုပုံမှန်အသုံးအနှုန်းများကို အသုံးပြု. HTML code ကိုစစ်ထုတ်ခြင်းစသည့်အခြားဒေစီ filtering နည်းလမ်းများစွာရှိသည်။ ကွဲပြားခြားနားသောအခြေအနေများနှင့်လိုအပ်ချက်များအတွက်မှန်ကန်သောဒေတာ filtering နည်းလမ်းကိုရွေးချယ်ရန်အလွန်အရေးကြီးသည်။

အကျဉ်းချုပ်

ဤဆောင်းပါးသည် PHP ဖွံ့ဖြိုးတိုးတက်ရေးတွင်အချက်အလက်စစ်ထုတ်ခြင်းလုပ်ငန်းများကိုအကောင်အထည်ဖော်ရန်အတွက်ဘုံနည်းလမ်းများစွာကိုမိတ်ဆက်ပေးသည်။ input filtering ကိုရှေ့အဆင့်သတ်မှတ်ချက်နှင့်နောက်ခံစိစစ်အတည်ပြုခြင်းဖြင့်ရရှိနိုင်သည်။ ယခင်ကအသုံးပြုသူအတွေ့အကြုံကိုတိုးတက်ကောင်းမွန်အောင်ပြုလုပ်သည်။ output filtering သည် XSS တိုက်ခိုက်မှုများကိုကာကွယ်ရန်အဓိကအားဖြင့် HTMLSPECALCALCHARCH နှင့် HTMLECALCHARTS နှင့် HTMLECTICTICTICTIONS တွင်အထူးအက္ခရာများကိုထိထိရောက်ရောက်မှလွတ်မြောက်နိုင်သည်။ အမှန်တကယ်ဖွံ့ဖြိုးတိုးတက်မှုဖြစ်စဉ်တွင်စနစ်၏လုံခြုံရေးနှင့်တည်ငြိမ်မှုကိုသေချာစေရန်တိကျသောအခြေအနေများအရသင့်လျော်သောဒေတာစီစစ်ခြင်းနည်းလမ်းကိုရွေးချယ်ရန်အလွန်အရေးကြီးသည်။