ホームページ >バックエンド開発 >PHPチュートリアル >php5 イメージ検証コードの実装コード_PHP チュートリアル

php5 イメージ検証コードの実装コード_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-21 15:42:35799ブラウズ

GD ライブラリ関数
1, imagecreatetruecolor ----- トゥルー カラー画像を作成します
imagecreatetruecolor(int x_size, int y_size) //x は幅を表し、y は高さを表します
2, imagecolorallocate は画像に色を割り当てます (色調整) ボード)
imagecolorallocate(resource image,int red,int green,int blue)//red,green,blue----三原色
3, imagestring描画関数
iamgestring(resource image,font,int x,int y,content , color);
4. 出力関数
php のヘッダーは、
1、Content-type: xxxx/yyyy
2、Location:xxxx:yyyy/zzz
3 の 3 つのタイプをサポートします。 ,Status :nnn xxxxxx
xxxx/yyyy はコンテンツファイルの種類を示します
例: image/gif
image/jpeg
image/png
例: header("Content-type:image/jpeg")
対応する画像がありますGD ライブラリの型
imagejpeg(),imagegif(),imagepang()
5,imageline 線描画関数
iamgeline(resource image,int x1,int y1,int x2,int y2,int color); -picture
x1 - --開始座標
y1
x2 ---終了座標
y2
6,imagesetpixel描画点関数
imagesetpixel(resource image,int x,int y,int color)
7,imagettfフォント付きテキスト書き込み関数
imagettftext (リソース画像、float サイズ、float 角度、int x、int y、int color、string fontfile、string text)
8、PHP 検証コードに中国語を挿入する方法
iconv("gb2312","utf-8" ,"character String"); //まずテキストを utf-8 形式に変換します
9, ランダム関数
1, rand([int min, int max]) //rand(1,4) は 1 ~ 4 の数値を生成します
2 , dechex (10進数) //16進数に変換
認証コード作成手順:
乱数生成--画像作成--画像に乱数を書き込む--セッションで保存
認証コード例を入力
gdchek.php

コードをコピーします コードは次のとおりです:
/*
* イメージ検証コード
* を生成し、エディターでテンプレートを開きます
*/
session_start(); ($i =0;$i<4;$i++){
$rand.=dechex(rand(1,15)); //16 進数を含む 4 桁の乱数を生成します
}
$_SESSION[check_gd]= $rand;
$img=imagecreatetruecolor(100,30); //画像を作成します
$bg=imagecolorallocate($img,0,0,0) //初回の背景色を生成します
$fc=imagecolorallocate ( $img,255,255,255); //生成されたフォントカラー
//画像上に線を描画します
for($i=0;$i<3;$i++){
$te=imagecolorallocate($img,rand(0,255) ), rand(0,255),rand(0,255));
imageline($img,rand(0,15),0,100,30,$te);
}
//画像上にいくつかの点を描画します
for($i =0;$ i<200;$i++){
$te=imagecolorallocate($img,rand(0,255),rand(0,255),rand(0,255));
imagesetpixel($img,rand()%100,rand) ()%30 ,$te);
}
//まずテキストを utf-8 形式に変換します
//$str=iconv("gb2312","utf-8","Hehehe");中国語
//smkai.ttf がフォント ファイルであることを確認します。他の人のコンピューターでフォントとして使用するには、そのファイルをプロジェクトのルート ディレクトリに置き、C の
imagettftext($) もあります。 :WINDOWSFonts on this machine) img,11,10,20,20,$fc,"simkai.ttf","Hello Hello");
//画像に文字列を書き込みます
//imagestring($img,rand( 1,6 ),rand(3,70),rand(3,16),$rand,$fc);
//出力画像
header("Content-type:image/jpeg"); );
?>


login.php


コードをコピーします:
/* * *
*/
session_start() ;
場合($_POST [sub] ){
//検証コードが同じかどうかを判断します
if($_POST[gd_pic]==$_SESSION[check_gd]){
echo "検証は成功しました! ";
}else{
echo "認証コード エラー";
}
}
?>

ユーザー名:

パスワード:

認証コード:







http://www.bkjia.com/PHPjc/320947.html

www.bkjia.com
tru​​e

http://www.bkjia.com/PHPjc/320947.html技術記事 GD ライブラリ関数 1、imagecreatetruecolor ----- トゥルー カラー イメージを作成します imagecreatetruecolor(int x_size, int y_size) //x は幅を表し、y は高さを表します 2、imagecolorallocate はイメージを分割します...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。