လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> Image Generation Verification Code: GD2 ပုံကို dynamally စာသားထည့်ပါ

Image Generation Verification Code: GD2 ပုံကို dynamally စာသားထည့်ပါ

M66 2025-05-29

0 က်ဘ်ဆိုက်မဖွံ့ဖြိုးတိုးတက်မှုတွင်ပုံစံများကိုအလိုအလျောက်တင်သွင်းခြင်းကိုကာကွယ်ရန်အတည်ပြုသည့်ကုဒ်နံပါတ်များကိုမကြာခဏအသုံးပြုလေ့ရှိသည်။ PHP သည် Rich Image Processing processing functions များကိုအတည်ပြုရန်ကုဒ်နံပါတ်များကိုထုတ်လုပ်ရန်ဖြစ်သည်။ ၎င်းတို့အနက် imagecreathrintgdgd2 () သည် GD2 ဖိုင်မှရုပ်ပုံအရင်းအမြစ်များကိုဖန်တီးရန်အသုံးပြုသော function တစ်ခုဖြစ်သည်။ သို့သော်၎င်းကိုများသောအားဖြင့်ရုပ်ပုံများကိုတိုက်ရိုက်ထုတ်လုပ်ခြင်းထက်ရှိပြီးသားပုံရိပ်အရင်းအမြစ်များကိုဖတ်ရန်အသုံးပြုလေ့ရှိသည်။ သို့သော်ကျွန်ုပ်တို့သည် imageGD2 () function ကိုပေါင်းစပ်ပြီး dynamdically image ကို GD2 format ဖြင့်သိမ်းဆည်းရန်, ထို့နောက်၎င်းကို isaecreatgdgd2 () မှတဆင့်ဖတ်။ လုပ်ဆောင်ရန်နှင့်လုပ်ဆောင်ပါ။

ဤဆောင်းပါးသည်ပုံရိပ်ကိုကျပန်းစာသားဖြင့်အတည်ပြုကုဒ်ပုံရိပ်ကိုမည်သို့ရှုမြင်ပြီးပုံရိပ်ကိုသုံးရန် ပုံရိပ်ကို အသုံးပြုရမည်ကိုသရုပ်ပြပါလိမ့်မည်။

ခြေလှမ်းများခြုံငုံသုံးသပ်ချက်

  1. ပုံရိပ်အရင်းအမြစ်တစ်ခုဖန်တီးပါ

  2. နောက်ခံအရောင်နှင့်ကျပန်းအတည်ပြုကုဒ်စာသားထည့်ပါ

  3. .gd2 format များအဖြစ်သိမ်းဆည်းပါ

  4. .gd2 ဖိုင်ကိုဖတ်ပါ။ ၎င်းကိုနောက်ဆုံးပုံရိပ်အဖြစ်ဖတ်ပါ

နမူနာကုဒ်

 <?php
// Step 1: Dynamically အတည်ပြုကုဒ်ပုံများဖန်တီးပါ
$width = 150;
$height = 50;
$image = imagecreatetruecolor($width, $height);

// နောက်ခံအရောင်များကိုသတ်မှတ်ပါ
$bgColor = imagecolorallocate($image, 255, 255, 255); // အဖြူ
imagefill($image, 0, 0, $bgColor);

// စာသားအရောင်ထားပါ
$textColor = imagecolorallocate($image, 0, 0, 0); // မဲသော

// ကျပန်းအတည်ပြုကုဒ်အကြောင်းအရာများကိုထုတ်လုပ်ပါ
$captcha = '';
$chars = 'ABCDEFGHJKLMNPQRSTUVWXYZ23456789';
for ($i = 0; $i < 6; $i++) {
    $captcha .= $chars[rand(0, strlen($chars) - 1)];
}

// ပုံသို့စာသားထည့်ပါ
$fontSize = 5; // 1 ရောက်လာ 5 အရွယ်အစား
$x = 10;
$y = ($height - imagefontheight($fontSize)) / 2;
imagestring($image, $fontSize, $x, $y, $captcha, $textColor);

// Step 2: ပုံကိုသိမ်းဆည်းပါ .gd2 စာချုပ်စာတမ်း
$gd2Path = 'captcha.gd2';
imagegd2($image, $gd2Path);

// မူရင်းပုံရိပ်အရင်းအမြစ်များကိုဖျက်ဆီးပါ
imagedestroy($image);

// Step 3: အသုံးပြု imagecreatefromgd2 ပုံကိုဖတ်ပါ
$gd2Image = imagecreatefromgd2($gd2Path);

// တည်ဆောက်သည် HTTP Header output ကိုပုံ
header('Content-Type: image/png');
imagepng($gd2Image);

// သန့်ရှင်းရေးလုပ်သည်
imagedestroy($gd2Image);
?>

အသုံးပြုရန်ညွှန်ကြားချက်များ

  • PHP installation တွင် GD စာကြည့်တိုက်ကိုဖွင့်ထားကြောင်းသေချာအောင်လုပ်ပါ (ပုံမှန်အားဖြင့်ပုံမှန်အားဖြင့်ဖွင့်ထားသည်) ။

  • Save Path captcha.gd2 ဖိုင်ကို captcha.gd2 ကိုရေးသင့်သည်။

  • သင်အတည်ပြုလက်မှတ်အတွက်အတည်ပြုကုဒ်အကြောင်းအရာကို $ _session အတွက်သင်သိမ်းဆည်းနိုင်သည်။

နမူနာလျှောက်လွှာအခြေအနေများ

ပုံစံတွင်ဤ dynamically ထုတ်လုပ်ထားသောအတည်ပြုကုဒ်ပုံကို embed လုပ်နိုင်သည်။

 <form method="post" action="https://m66.net/verify.php">
    <img src="https://m66.net/captcha.php" alt="အတည်ပြုရန်ကုတ်">
    <input type="text" name="captcha" placeholder="请输入အတည်ပြုရန်ကုတ်">
    <input type="submit" value="နားထောင်">
</form>

အကျဉ်းချုပ်

Imagecreathringdgdgd2 () သည် ရုပ်ပုံများကိုဖန်တီးရန်တိုက်ရိုက်မသုံးသော်လည်း GD2 ဖိုင်ကိုပထမဆုံးအကြိမ်အသုံးပြုခြင်းကိုပထမဆုံးအကြိမ်အသုံးပြုခြင်းကိုအသုံးပြုခြင်းနှင့်ရလဒ်များကိုဖတ်ရှုခြင်းနှင့်ထုတ်ယူခြင်း၏ရည်ရွယ်ချက်ကိုအောင်မြင်စွာထုတ်ယူနိုင်သည့်ရည်ရွယ်ချက်ကိုရရှိနိုင်ပါသည်။ ဤချဉ်းကပ်မှုသည်အလယ်အလတ်ပုံသဏ္ဌာန်သို့မဟုတ်ရုပ်ပုံတင်းပလိတ်များလိုအပ်သည့်မြင်ကွင်းများအတွက်သင့်လျော်သည်။

အကယ်. သင်ပိုမိုရှုပ်ထွေးသောအတည်ပြုကုဒ်ပုံများ (ပုံပျက်ခြင်း, 0 င်ရောက်စွက်ဖက်ခြင်း, 0 င်ရောက်စွက်ဖက်ခြင်း, ဖောင့်များ,

TTF ဖောင့်နှင့်အတူအတည်ပြုကုဒ်ဗားရှင်းသရုပ်ပြရန်ငါ့ကိုလိုအပ်ပါသလား?