PHP認証コード(演算付き)はどのように実現しますか?
2065 ワード
まず簡単に言えば
1、認証コード画像を描く:
ここでGD 2で実現した
キャンバスを先に描画
キャンバスに数値を描く
ここで検証コードの基本描画が完了しました
加算の追加方法
4つのランダムな数字を描き、1つ目は加算された10位、2つ目は加算された10位、3つ目は加算された10位、4つ目は加算された10位、そして2番目の数字と3番目の数字の間にプラス(+)を描き、一番後ろに等号(=)を描く機能が完成します.次に計算した結果、式$scode=$s 1*10+$s 2+$s 3*10+$s 4は、10桁の数字に10を乗じて加算すればいいのです.
検証の検証方法
検証コードが表示されると、生成された結果をセッション値に$SESSION['scode'] = $scode; そして,ユーザが入力した認証コードと比較して,ユーザが入力した認証コードが正しいかどうかを知ることができる.
以下は完全なコードです
1、認証コード画像を描く:
ここでGD 2で実現した
キャンバスを先に描画
$im = imagecreate(66,18);//
$back = ImageColorAllocate($im, 245,245,245); //
imagefill($im,0,0,$back); //
キャンバスに数値を描く
$font = ImageColorAllocate($im, rand(100,255),rand(0,100),rand(100,255)); //
$s1=rand(1,9); // 1-9
imagestring($im, 5, 2+0*10, 1, $s1, $font); //
ここで検証コードの基本描画が完了しました
加算の追加方法
4つのランダムな数字を描き、1つ目は加算された10位、2つ目は加算された10位、3つ目は加算された10位、4つ目は加算された10位、そして2番目の数字と3番目の数字の間にプラス(+)を描き、一番後ろに等号(=)を描く機能が完成します.次に計算した結果、式$scode=$s 1*10+$s 2+$s 3*10+$s 4は、10桁の数字に10を乗じて加算すればいいのです.
検証の検証方法
検証コードが表示されると、生成された結果をセッション値に$SESSION['scode'] = $scode; そして,ユーザが入力した認証コードと比較して,ユーザが入力した認証コードが正しいかどうかを知ることができる.
以下は完全なコードです