確認コード生成ファイル checkNum_session.php
Header("Content-type:image/png");
//ヘッダーを定義し、画像ファイル、できれば png を宣言、著作権干渉なし
/ /新しい 4 桁の整数の検証コードを生成します
session_start();//セッションを開きます;
$authnum_session = '';
$str = 'abcdefghijkmnpqrstuvwxyz1234567890'; //画像に表示する数値と合計を定義します;
$l = strlen($str); //文字列の長さを取得します。
//前に定義した 4 つの文字と数字をランダムに選択します
for($i=1;$i<=4;$ i++ )
{
$num=rand(0,$l-1);
//最初の単語から文字列の最大長まで、毎回ランダムに数値を選択します。
//文字がインターセプトされるため、1 ずつ減ります。このように、任意の 34 文字がランク付けされます。
$authnum_session.= $str[$num];
}
session_register; ("authnum_session");
//検証にセッションを使用することもできます。セッションを登録します。名前は authnum_session です。
//他のページに画像が含まれている限り
//$_SESSION[" を通じて呼び出すことができます。 authnum_session"]
//検証コード画像を生成,
$im = imagecreate(50,20);//画像の幅と高さ;
//主に3色を使用: 黒、白、グレー ;
$black = ImageColorAllocate($im, 0,0,0);
$white = ImageColorAllocate($im, 255,255,255);
$gray = ImageColorAllocate($im, 200,200,200);
// 4桁の整数の認証コードを変換 画像を描画
imagefill($im,68,30,$gray);
//干渉線が必要ない場合はコメントだけ;
$li = ImageColorAllocate($im, 220,220,220 );
for($i=0;$ i<3;$i++)
{//ユーザー入力に影響を与える可能性があるため、状況によって異なります。 (0,30),rand(0,21 ),rand(20,40),rand(0,21),$li);
}
//画像内の文字の位置;
imagestring($im , 5, 8, 2, $authnum_session, $white);
for($i=0;$i<90;$i++)
{//干渉ピクセルを追加します
imagesetpixel($im, rand()%70, rand ()%30, $gray);
}
ImagePNG ($im);
ImageDestroy($im);
?>