簡體   English   中英

驗證碼驗證不起作用

[英]Captcha code validation not working

我有以下代碼驗證 php腳本:

  if(empty($_POST['captcha_code'])) {
    $error = 1;
    $code[3] = 'color:#FF0000;';
  } else {
    include_once "formfiles/captcha.php";
        $randomnr = new Securimage();
    $valid = $randomnr->check($_POST['captcha_code']);

    if(!$valid) {
      $error = 1;
      $code[3] = 'color:#FF0000;';   
      $code[4] = '<strong><span style="color:#FF0000;">Incorrect code</span></strong>';
    }
  }

和這個驗證碼的 PHP代碼:

<?php
    Securimage(); 
    exit(); 

    function Securimage() 
    { 
    $randomnr = rand(1000, 9999);
    $_SESSION['randomnr2'] = md5($randomnr);

    $im = imagecreatetruecolor(100, 38);

    $white = imagecolorallocate($im, 255, 255, 255);
    $grey = imagecolorallocate($im, 150, 150, 150);
    $black = imagecolorallocate($im, 0, 0, 0);

    imagefilledrectangle($im, 0, 0, 200, 35, $black);

    //path to font - this is just an example you can use any font you like:

    $font = dirName(__FILE__).'/calvin.ttf';

    imagettftext($im, 20, 4, 22, 30, $grey, $font, $randomnr);

    imagettftext($im, 20, 4, 15, 32, $white, $font, $randomnr);

    imagegif($im);
    imagedestroy($im);
    }
?>

提交表單后,我總是得到一些以gif開頭的尷尬代碼。 我的錯在哪里 有人能幫幫我嗎?

您需要對有關內容類型的標頭進行貼花處理,以使瀏覽器將其識別為圖像。 嘗試這個

header('Content-Type: image/gif');
Securimage(); 
exit();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM