ပုံစံတင်သွင်းမှုတွင်အသုံးပြုသူများသည်တစ်ခါတစ်ရံမသင့်လျော်သောစာသားသို့မဟုတ်အထိခိုက်မခံသောသတင်းအချက်အလက်များကိုရိုက်ထည့်နိုင်သည်။ Platform အကြောင်းအရာ၏ကျန်းမာရေးနှင့်လုံခြုံရေးကိုသေချာစေရန် PHP ၏ stripos function ကို အသုံးပြု. သုံးစွဲသူထည့်သွင်းမှုကိုရှာဖွေရန်နှင့် filter filter filter ကိုသုံးနိုင်သည်။ Form အကြောင်းအရာပြန်လည်သုံးသပ်ခြင်းတွင်သော့ချက်ကျသောရှာဖွေရေးနှင့် filtering ကိုအကောင်အထည်ဖော်ရန်အတွက် strips -function ကိုမည်သို့အသုံးပြုရမည်ကိုဤဆောင်းပါးကမိတ်ဆက်ပေးလိမ့်မည်။
Strips သည် PHP တွင် function တစ်ခုဖြစ်ပြီး string တစ်ခုတွင်အလွှာတစ်ခု၏ပထမဆုံးဖြစ်ပျက်မှုကိုရှာဖွေရန်အသုံးပြုသော function တစ်ခုဖြစ်သည်။ function သည်ဖြစ်ရပ်မှန်အာရုံမခံစားနိုင်သည့်အရာဖြစ်ပြီးပြန်လည်နေရာချထားခြင်းမှာအလွှာပထမ ဦး ဆုံးပေါ်လာသည့်နေရာဖြစ်သည်။ ရှာမတွေ့ပါက၎င်းသည် မှားယွင်းသော အရာဖြစ်သည်။ အထိခိုက်မခံသောသတင်းအချက်အလက်သို့မဟုတ်သော့ချက်စာလုံးများရှာဖွေခြင်းကိုလုပ်သည့်အခါဤလုပ်ဆောင်ချက်သည်အလွန်အသုံးဝင်သည်။
stripos($haystack, $needle, $offset);
$ haystack : ရှာဖွေရန် string ကို။
$ အပ် - တွေ့ရှိရမည့်အလွှာ။
$ offset : (optional) offset သတ်မှတ်ထားလျှင်ရှာဖွေမှုသည်ထိုတည်နေရာမှစတင်သည်။
ပုံစံအကြောင်းအရာများကိုပြန်လည်သုံးသပ်စဉ်အတွင်းအထိခိုက်မခံသောသော့ချက်စာလုံးများရှိမရှိသိရန် strips များကို သုံးနိုင်သည်။ ဥပမာအားဖြင့်အသုံးပြုသူမှတင်ပြသောပုံစံသည်အချို့သောအထိခိုက်မခံသောစကားလုံးများပါ 0 င်ခြင်းရှိမရှိကိုကျွန်ုပ်တို့ရှာဖွေနေသည်ဆိုပါစို့။
အသုံးပြုသူတင်သွင်းထားသောပုံစံတွင်အကြောင်းအရာကိုရှာဖွေရန် SCRIPOS function ကိုမည်သို့အသုံးပြုရမည်ကိုပြသသည့်ရိုးရှင်းသောဥပမာတစ်ခုမှာမသင့်လျော်သောဝေါဟာရများပါ 0 င်သည်။
<?php
// အထိခိုက်မခံစကားလုံးစာရင်းကိုသတ်မှတ်
$sensitiveWords = ['အထိခိုက်မခံစကားလုံးများ1', 'အထိခိုက်မခံစကားလုံးများ2', 'မသင့်လျော်သောအကြောင်းအရာ'];
// form input content ကိုတူအောင်ဖန်တီးပါ
$formInput = $_POST['user_input'] ?? '';
// 检查表单输入是否包含အထိခိုက်မခံစကားလုံးများ
foreach ($sensitiveWords as $word) {
if (stripos($formInput, $word) !== false) {
echo "အသိပေး:您的输入包含မသင့်လျော်သောအကြောင်းအရာ,ကျေးဇူးပြုပြီးမတင်မီပြုပြင်ပါ。";
// ဒီမှာ,ပုံစံတင်သွင်းမှုပုံစံတင်သွင်းမှုကိုငြင်းပယ်ရန်သို့မဟုတ်အခြားအပြောင်းအလဲများကိုပြုလုပ်ရန်သင်ရွေးချယ်နိုင်သည်
exit;
}
}
// ပုံစံဒေတာကိုဆက်လက်လုပ်ဆောင်ရန်ဆက်လက်
echo "သင်၏ပုံစံကိုအောင်မြင်စွာတင်ပြခဲ့သည်!";
?>
အထက်ပါကုဒ်များတွင်ကျွန်ုပ်တို့သည်အထိခိုက်မခံသောစကားလုံးများ၏စာရင်းကိုသတ်မှတ်ပြီးအသုံးပြုသူမှထည့်သွင်းထားသောပုံစံအကြောင်းအရာသည် scripos function မှတဆင့်တစ် ဦး အားဖြင့်ဤအထိခိုက်မခံသောစကားလုံးများပါ 0 င ် သည်။ အကယ်. ပွဲတစ်ပွဲကိုတွေ့ရှိပါကသတိပေးစာတစ်စောင်သည် output ကိုထုတ်ယူခြင်းနှင့်ပြုပြင်ခြင်းကိုရပ်ဆိုင်းလိုက်သည်။ အဘယ်သူမျှမအထိခိုက်မခံသောစကားလုံးများကိုမတွေ့ရှိပါကပုံစံကိုပုံမှန်အားဖြင့်တင်သွင်းလိမ့်မည်။
တစ်ခါတစ်ရံတွင်ပုံစံအကြောင်းအရာတွင် URL link တစ်ခုပါ 0 င်နိုင်သည်။ URL တွင် URL တွင်မသင့်တော်သောဒိုမိန်းအမည်များသို့မဟုတ်အထိခိုက်မခံသောလင့်များပါ 0 င်သည်ကိုစစ်ဆေးရန် strips များကိုလည်း သုံးနိုင်သည်။ ဤနေရာတွင်ပုံစံအကြောင်းအရာတွင်ခွင့်ပြုချက်မရှိဘဲ URLs များပါ 0 င်သည်ကိုစစ်ဆေးရန်ဥပမာတစ်ခုရှိသည်။
<?php
// ခွင့်ပြုချက်မရှိဘဲဒိုမိန်းအမည်များစာရင်းကိုသတ်မှတ်ပါ
$disallowedDomains = ['example.com', 'anotherexample.com'];
// form input content ကိုတူအောင်ဖန်တီးပါ
$formInput = $_POST['user_input'] ?? '';
// တေှ့မြင်URLဒိုမိန်းအမည်
preg_match_all('/https?:\/\/([^\/]+)/', $formInput, $matches);
// အားလုံးကိုက်ညီသောဒိုမိန်းအမည်အားလုံးမှတဆင့်ကြားမှာ
foreach ($matches[1] as $domain) {
if (in_array($domain, $disallowedDomains)) {
echo "အသိပေး:သင်၏ input တွင်ခွင့်မပြုသည့်လင့်များပါရှိသည်({$domain})。ကျေးဇူးပြုပြီးမတင်မီပြုပြင်ပါ。";
exit;
}
}
// ပုံစံဒေတာကိုဆက်လက်လုပ်ဆောင်ရန်ဆက်လက်
echo "သင်၏ပုံစံကိုအောင်မြင်စွာတင်ပြခဲ့သည်!";
?>
ဤဥပမာတွင် Preg_Match_All ကို URLs အားလုံးရှိဒိုမိန်းအမည်များကိုထုတ်ယူရန် Preg_Match_All ကို အသုံးပြု. ခွင့်ပြုချက်မရှိဘဲဒိုမိန်းအမည်ရှိမဟုတ်သည်ကိုစစ်ဆေးရန်အတွက် _Array ကို သုံးပါ။ အမှန်တကယ်လိုအပ်ချက်များနှင့်အညီခွင့်ပြုချက်မရှိသောဒိုမိန်းအမည်စာရင်းကိုသင်ပြုပြင်နိုင်သည်။
စွမ်းဆောင်ရည်ပြ issues နာများ - strips များ မကြာခဏအသုံးပြုမှုသည်စွမ်းဆောင်ရည်ရှည်သည်သို့မဟုတ်အထိခိုက်မခံသောစကားလုံးများ၏စာရင်းသည်အလွန်ကြီးမားသည်။ ယခုအချိန်တွင်ပုံမှန်အသုံးအနှုန်းများ (သို့) အခြား optimization မဟာဗျူဟာများကို အသုံးပြု. သင်စဉ်းစားနိုင်သည်။
မပြည့်စုံသောပွဲစဉ် - strips များသည် string string ရှာဖွေမှုများကို အခြေခံ. တစ်စိတ်တစ်ပိုင်းပွဲများရှိနိုင်သည်။ Misjudgment ကိုရှောင်ရှားရန်အထိခိုက်မခံသောစကားလုံးများကိုနေရာများ (သို့) ခွဲထွက်ရေးအတွက်အခြားအထူးအက္ခရာများမတိုင်မီနှင့်အပြီးထည့်သွင်းနိုင်သည်။
Enhanced သုံးစွဲသူအတွေ့အကြုံ - သုံးစွဲသူ input ကို Institution Backback လုပ်ချင်ရင် user input အတွက် javascript နဲ့ Ajax ကိုပေါင်းစပ်ပြီးအသုံးပြုသူအတွေ့အကြုံကိုတိုးတက်အောင်လုပ်ဖို့ရှေ့ဆုံးအဆုံးထောက်လှမ်းရေးအတွက်ပေါင်းစပ်စဉ်းစားနိုင်ပါတယ်။