PHP實現驗證碼登入

2021-07-16 08:09:57 字數 1882 閱讀 4251

1.登入頁面

2.驗證碼生成程式code.php

<?php 

//載入驗證碼類

require "captcha.class.php";

//例項化物件

$captcha = new captcha();

//生成驗證碼

$captcha->generate(70,22,5,4);

?>

3.驗證碼生成類captcha.class.php

<?php 

class captcha

shuffle($rand_keys);//將儲存隨機數的陣列打亂

$code ='';

foreach($rand_keys as $key)

//儲存session中

session_start();

$_session['captcha_code']=$code;

//將驗證碼值寫入中

//生成畫布

$img=imagecreatetruecolor($img_w,$img_h);

//設定背景

$bg_color=imagecolorallocate($img,0xc0,0xc0,0xc0);

imagefill($img,0,0,$bg_color);

//干擾畫素

for($i=0;$i<300;++$i)

//矩形邊框

$rect_color = imagecolorallocate($img,0xff,0xff,0xff);//白色

imagerectangle($img,0,0,$img_w-1,$img_h-1,$rect_color);

//2操作畫布

//設定字串顏色

if(mt_rand(1,2)==1)

else

//設定字串位置

$font_w = imagefontwidth($font);//字型寬

$font_h = imagefontheight($font);//字型高

$str_w = $font_w * $char_len;//字串寬

imagestring($img,$font,($img_w-$str_w)/2,($img_h-$font_h)/2,$code,$str_color);

//輸出內容

header('content-type:image/png');

imagepng($img);

//銷毀畫布

imagedestroy($img);

} }?>

4.驗證碼驗證程式checkcode.php

<?php 

header("content-type:text/html;charset=utf-8");

session_start();

//獲取使用者輸入的驗證碼

$code = trim($_post["captcha"]);

//將字串都轉成小寫進行比較

if(strtolower($code)==strtolower($_session['captcha_code']))

else if(($username!='username')||($password!='password'))

else if(($username=='username')&&($password=='password'))

}else

?>

php 使用者登入驗證 PHP實現登入驗證碼校驗功能

驗證碼的校驗是利用php中的 session功能來實現。在最頂端宣告函式 session start 告訴伺服器我們要用這個函式的功能。session start 接下來我們用到的就是驗證碼實現的 這裡用英文數字的 為例。image imagecreatetruecolor 100,30 建立乙個1...

php實現登入驗證碼 php如何實現登入驗證碼

php實現登入驗證碼的方法 首先產生4到6位數的隨機驗證碼 然後把產生的每個字元儲存到session或資料庫 接著將驗證碼傳送到使用者的手機 最後將和輸入的驗證碼進行對比驗證即可。php實現簡單的驗證碼功能機制 的安全性是開發者不可忽視的乙個問題,目前使用最多的一種可以提高 安全性的方法就是使用驗證...

PHP實現驗證碼

目前,不少 為了防止使用者利用機械人自動註冊 登入 灌水,都採用了驗證碼技術。所謂驗證碼,就是將一串隨機產生的數字或符號,生成一幅,裡加上一些干擾象素 防止 ocr 由使用者肉眼識別其中的驗證碼資訊,輸入表單提交 驗證,驗證成功後才能使用某項功能。我們這裡展示了如何編寫 php程式實現驗證碼功能 一...