ကွန်ယက်လုံခြုံရေးသိရှိနားလည်မှုများတိုးတက်လာခြင်းနှင့်အတူစိစစ်ရေးကုဒ်များကို web ပုံစံများကိုအန္တရာယ်ရှိသောစစ်ဆင်ရေးနှင့်အလိုအလျောက်တင်သွင်းမှုကိုတားဆီးရန်ဝက်ဘ်ပုံစံများတွင်ကျယ်ပြန့်စွာအသုံးပြုသည်။ အတည်ပြုကုဒ်မှတဆင့်အသုံးပြုသူရဲ့စစ်ဆင်ရေးဟာတကယ့်အပြုအမူရှိမရှိထိထိရောက်ရောက်ခွဲခြားသိမြင်နိုင်တယ်။ ဤဆောင်းပါးသည် PHP ကိုမည်သို့အသုံးပြုရမည်ကိုအသေးစိတ်အတည်ပြုထားသောကုဒ်များကိုထုတ်လုပ်ရန်နှင့်စိစစ်ရေးကိုဖြည့်စွက်ရန်ပုံစံသို့ပေါင်းစပ်ပါမည်ကိုအသေးစိတ်ရှင်းပြပါလိမ့်မည်။
အတည်ပြုကုဒ်ကိုများသောအားဖြင့်ကျပန်းဇာတ်ကောင်များဖြင့်ဖွဲ့စည်းထားသည်။ အောက်ဖော်ပြပါအချက်သည် PHP မှတစ်ဆင့်ကျပန်းအတည်ပြုကုဒ်ကိုထုတ်ပေးသောဥပမာတစ်ခုဖြစ်သည်။
<?php session_start(); // စွမ်းဆောင်နိုင်စေ Session // အတည်ပြုကုဒ်အရှည်ကိုသတ်မှတ်ပါ $length = 4; // ရရှိနိုင်အက္ခရာများကိုသတ်မှတ်ပါ $str = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'; $code = ''; // ကျပန်းအတည်ပြုကုဒ် string ကိုထုတ်လုပ်ပါ for ($i = 0; $i < $length; $i++) { $code .= $str[rand(0, strlen($str) - 1)]; } // ကယ်ဆယ်Session,စာလုံးအသေးပုံစံသို့ပြောင်းပါ $_SESSION['code'] = strtolower($code); ?>
ထို့နောက် GD စာကြည့်တိုက်ကို အသုံးပြု. Symolification Code string ကိုပုံသို့ဆွဲယူပါ။
<?php // အတည်ပြုကုဒ်ပုံအရွယ်အစားကိုသတ်မှတ်ပါ $width = 120; $height = 40; // ပတ်တူဖန်တီးပါ $image = imagecreatetruecolor($width, $height); // နောက်ခံအရောင်များကိုသတ်မှတ်ပါ $bgColor = imagecolorallocate($image, 255, 255, 255); imagefilledrectangle($image, 0, 0, $width, $height, $bgColor); // စာသားအရောင်ထားပါ $textColor = imagecolorallocate($image, 0, 0, 0); // ပုံတွင်စိစစ်အတည်ပြုကုဒ် string ကိုရေးပါ imagettftext($image, 20, 0, 10, 30, $textColor, 'font.ttf', $code); // browser မှ output ကိုဓာတ်ပုံများ header('Content-type:image/png'); imagepng($image); // အရင်းအမြစ်များကိုအခမဲ့ imagedestroy($image); ?>
အထက်ပါ script ကိုဖွင့်ပြီးနောက်, အတည်ပြုကုဒ်နှင့်အတူ PNG ပုံရိပ်ထုတ်ပေးလိမ့်မည်။
အတည်ပြုကုဒ် input box ကို HTML ပုံစံသို့ထည့်ပြီးအတည်ပြုကုဒ်ကိုကိုးကားပါ။
အသုံးပြုသူသည်ပုံစံကိုတင်ပြသောအခါမှန်ကန်သောအတည်ပြုကုဒ်ကိုထည့်သွင်းရန်လိုအပ်သည်။ ပုံစံအမျိုးမျိုးသည်၎င်းကိုစစ်ဆေးလိမ့်မည်။
ပုံစံဖြင့် script `handleform.php` ကိုလုပ်ဆောင်နေသည့် session မှတဆင့်အသုံးပြုသူမှထည့်သွင်းထားသောအတည်ပြုကုဒ်ကိုစစ်ဆေးပါ။
<?php session_start(); // အသုံးပြုသူမှထည့်သွင်းထားသောအတည်ပြုကုဒ်ကိုရယူပါ။ ၎င်းကိုစာလုံးအသေးသို့ပြောင်းပါ $code = strtolower($_POST['code']); $sessionCode = strtolower($_SESSION['code']); // နှိုင်းယှဉ်အတည်ပြုကုဒ် if ($code !== $sessionCode) { echo 'အတည်ပြုကုဒ် input ကိုအမှား'; exit; } // အခြားပုံစံဒေတာကိုဆက်လက်လုပ်ဆောင်ပါ // ... ?>
အတည်ပြုကုဒ်ကိုက်ညီမှုမအောင်မြင်ပါကစနစ်သည်အမှားအယွင်းတစ်ခုပေးလိမ့်မည်။ အကယ်. ပွဲကိုအောင်မြင်စွာအောင်မြင်ပါကနောက်ဆက်တွဲပုံစံကိုလုပ်ဆောင်ခြင်းယုတ္တိဗေဒကိုဆက်လက်လုပ်ဆောင်သွားမည်။
အထက်ပါအဆင့်များမှတစ်ဆင့် PHP ကို အသုံးပြု. စိစစ်အတည်ပြုကုဒ်များကိုဖန်တီးရန်, အတည်ပြုကုဒ်ဓာတ်ပုံများကိုဖန်တီးရန်နှင့်စိစစ်အတည်ပြုများအတွက်ပုံစံများနှင့်ပေါင်းစပ်။ , ဤနည်းလမ်းသည် 0 က်ဘ်ဆိုက်၏အပြန်အလှန်အကျိုးသက်ရောက်မှုရှိသောလုံခြုံရေးကိုထိရောက်စွာတိုးတက်စေပြီးပုံစံများကိုအလိုအလျောက် script များဖြင့်အလွဲသုံးစားပြုခြင်းမှကာကွယ်ရန်ဖြစ်နိုင်သည်။
အမှန်တကယ်စီမံကိန်းများတွင် developer များကအတည်ပြုကုဒ်၏ဇာတ်ကောင်စတိုင်, ရုပ်ပုံဝင်ရောက်စွက်ဖက်သောဒြပ်စင်များ, စာလုံးအရွယ်အစားကိုပိုမိုကောင်းမွန်စေနိုင်သည်။ အတည်ပြုကုဒ်၏အသိအမှတ်ပြုမှုနှင့်တိုက်ခိုက်မှုကာကွယ်တားဆီးရေးကိုတိုးမြှင့်ခြင်း