ホームページ >バックエンド開発 >PHPチュートリアル >PHP_PHP チュートリアルによるログイン確認コード機能の実装
PHP を使用してログイン確認コード関数を実装します:
session_start();
session_register("login_check_number");
//昨夜、chianren で確認コードの効果を見たので、それについて考えてみました。 PHP を使用 GD ライブラリでも同様の機能が完成しました
//最初に背景を生成し、生成された検証コードをその上に配置します
$img_height=120; //最初に画像の長さと幅を定義します
$img_width=40;
; if($HTTP_GET_VARS[" act"]== "init"){
//srand(microtime() * 100000);//PHP420 以降は srand は必要ありません
for($Tmpa=0;$Tmpa<4; $Tmpa){
$ nmsg.=dechex(rand(0,15));
}//sports98 作成
$HTTP_SESSION_VARS[login_check_number] = $nmsg;
//$HTTP_SESSION_VARS[login_check_number] = strval(mt_rand) ("1111"," 9999")); // 4 桁の乱数を生成してセッションに入力します
// 文字と数字を同時に生成できると誰が付け加えられるでしょうか? ? ----sports98 によって完了
$aimg = imageCreate($img_height,$img_width); //画像を生成します
ImageColorAllocate($aimg, 255,255,255) //画像の背景色を定義します。初めて、PHP はそれを背景色と認識します
$black = ImageColorAllocate($aimg, 0,0,0) //必要な black を定義します
ImageRectangle($aimg,0,0,$img_height-1,$img_width- 1,$black); //まず、画像を囲む黒い四角形を作成します
//今度は、実際に画像上にいくつかのシンボルを生成するための雪の結晶の背景を生成します
for ($i=1; $i< ;=200; $i) { //最初はテストに 100 を使用します
imageString($aimg,1,mt_rand(1,$img_height),mt_rand(1,$img_width),"*",imageColorAllocate($aimg,mt_rand( 200,255),mt_rand(200,255),mt_rand( 200,255)));
//は、ほら、これは実際には雪の結晶ではなく、ただの * 記号です。それらを「乱雑でカラフル」に見せるには、それらを 1 つずつ生成するときに、位置、色、さらにはサイズに乱数を使用する必要があります。これは rand() または mt_rand を使用して行うことができます。
}
//上で背景が生成されました。生成された乱数を配置します。原理は上記と同様で、乱数を1つずつ配置し、その位置、大きさ、色はすべて乱数です~~
//背景と区別するために、ここの色は200を超えてはなりません。上の色は 200 未満であってはなりません
for ($i=0;$i
}
Header("Content -type: image/png"); //次のデータがテキストとして表示されるのではなく、画像であることをブラウザに伝えます
ImagePng($aimg) //png 形式を生成します。 。 。 。ふふ、効果はかなり似ていますね。 。 。
ImageDestroy($aimg);
}
?>