နေ့စဉ် 0 ဘ်ဆိုဒ်များဖွံ့ဖြိုးတိုးတက်မှုတွင်အသုံးပြုသူအတွေ့အကြုံကိုပိုမိုကောင်းမွန်စေရန်နှင့်စနစ်တည်ငြိမ်မှုကိုမြှင့်တင်ရန်အတွက် developer များမကြာခဏဆိုသလိုထပ်ခါတလဲလဲပုံစံများကိုတင်ပြခြင်းသို့မဟုတ်မကြာခဏအသုံးပြုသူများ၏လုပ်ငန်းလည်ပတ်မှုများကိုကိုင်တွယ်ဖြေရှင်းရန်လိုအပ်သည်။ လှုပ်ခါခြင်းနှင့်ထပ်ခါတလဲလဲပြောဆိုခြင်းတင်သွင်းမှုတင်သွင်းမှုနည်းပညာများသည်ဤပြ problems နာများကိုဖြေရှင်းရန်အဓိကနည်းလမ်းဖြစ်သည်။
ဆန့်ကျင်ရေးဆန့်ကျင်ရေးဟုခေါ်သောအဓိပ္ပာယ်ကိုကြိမ်နှုန်းဖြင့်စစ်ဆင်ရေးတစ်ခုတွင်စစ်ဆင်ရေးကိုဖြစ်ပေါ်စေသည့်အခါ,
PHP တွင် JavaScript ကဲ့သို့သောအဖြစ်အပျက်များကိုကျွန်ုပ်တို့တိုက်ရိုက်နားထောင်ခြင်းမပြုသော်လည်းယုတ္တိဆိုင်ရာတရားစီရင်ခြင်းနှင့်နှောင့်နှေးခြင်းဖြင့်လည်းအလားတူသက်ရောက်မှုများကိုလည်းကျွန်ုပ်တို့ရရှိနိုင်သည်။ PHP anti-shake ယန္တရားကိုတုပသည့်ကုဒ်ဥပမာတစ်ခုမှာ -
<?php class Debounce { private $callback; private $delay; private $timer; public function __construct($callback, $delay) { $this-> callback = $ ပြန်ခေါ်ခြင်း, $ -> နှောင့်နှေး = $ နှောင့်နှေး; } Public Function Diakong () { လျှင် ($ ဒီ -> Timer) လျှင် ClearPimeout ($ ဒီ -> Timer); } $ THE-> TIMER = SETEROUT = SETMILEOUT ($ -> ပြန်သွား, $ ဒီ -> နှောင့်နှေးခြင်း); } } // ဥပမာဥပမာအသုံးပြုမှု $ drike = di di di di di di di di diake (function ကို () { // တောင်းဆိုထားသောစစ်ဆင်ရေးကိုလုပ်ဆောင်ပါ}, 1000); // ဖြစ်ရပ်ကိုအစပျိုးလိုက်သောအခါ () di di diription () ကိုခေါ်ပါ။ >
သတိပြုသင့်သည်မှာ PHP ကိုယ်တိုင်က browser ၏ဘေးထွက်အဖြစ်အပျက်စောင့်ကြည့်လေ့လာခြင်း, Sational-Settingout သည် simulation ဟူသောစိတ်ကူးတစ်ခုဖြစ်သည်။
ထပ်ခါတလဲလဲထပ်ခါတလဲလဲတင်ပြမှုများသည်ဆန့်ကျင်ရေးထက်ပုံစံတင်ပြချက်များကိုပိုမိုလုပ်ဆောင်ရန်ပိုမိုအသုံးပြုလေ့ရှိသည်။ ဘုံအလေ့အကျင့်တစ်ခုမှာလက်အောက်ခံသည့်အချိန်တွင်ပထမတင်သွင်းမှုဖြစ်ကြောင်းအတည်ပြုရန်ထူးခြားသောပုံစံ (တိုကင်) ကိုမိတ်ဆက်ပေးရန်ဖြစ်သည်။
ဤတွင် PHP anti-reime anti-unti-peated comment pegement ဥပမာတစ်ခုမှာ -
<?php class FormToken { private $token; public function __construct() { if (!isset($_SESSION['token'])) { $_SESSION['token'] = bin2hex(random_bytes(32)); } $this-> Token = $ _SIVey ['Token']; } အများပြည်သူ function ကိုယေဘူယျအသံထွက် () { ပြန်လာ ' <input type="hidden" name="token" value="' . $this->token . '"> ''; } အများပြည်သူ function ကို ralidatetoken [) { အကယ်. (ISSET (_ $ _ post ['post'] )&& _post ['token'] === $ _post [_post] === $-> token] // ပုံစံတင်သွင်းမှုစစ်ဆင်ရေး} { // တရားမ 0 င်တောင်းဆိုခြင်း, } } // ဥပမာဥပမာအသုံးပြုမှု $ formtoken = trocketed (); ECHO $ formtoken-> generatetoken (), $ formtoken-> ralidatoren (); >
ဤနည်းအားဖြင့်ပုံစံတင်သွင်းမှုတစ်ခုစီသည်ထူးခြားသောအမှတ်အသားတစ်ခုဖြင့်လိုက်ပါသွားလိမ့်မည်။ ၎င်းကိုဆာဗာဘက်တွင်နှိုင်းယှဉ်ပါလိမ့်မည်။
အမှန်တကယ်ဖွံ့ဖြိုးတိုးတက်မှုတွင်ဆန့်ကျင်ရေးဆန့်ကျင်ရေးနှင့်ထပ်ခါတလဲလဲပြောဆိုခြင်းတင်သွင်းခြင်းသည်အသုံးပြုသူအားလွဲမှားစွာရှောင်ရှားနိုင်သော်လည်းသက်ဆိုင်သောအခြေအနေများသည်အနည်းငယ်ကွဲပြားသည်။
anti-shake နှင့်ထပ်ခါတလဲလဲကျူးလွန်သောတင်သွင်းမှုနည်းပညာ၏နားလည်မှုနှင့်လက်တွေ့ကျင့်သုံးခြင်းအားဖြင့်သုံးစွဲသူအတွေ့အကြုံကိုထိရောက်စွာတိုးတက်ကောင်းမွန်အောင်ပြုလုပ်နိုင်ပြီးစနစ်အရင်းအမြစ်များကိုအလွဲသုံးစားမှုမှကာကွယ်နိုင်သည်။ ဖွံ့ဖြိုးသူများသည်ပိုမိုထိရောက်သောတည်ငြိမ်သောစနစ်အပြုအမူအောင်မြင်ရန်စီးပွားရေးလုပ်ငန်းများအရဤနည်းပညာနှစ်ခုကိုကျိုးကြောင်းဆီလျော်စွာရွေးချယ်သင့်သည်။