ホームページ  >  記事  >  バックエンド開発  >  PHP で生成された検証コードの実装 code_PHP チュートリアル

PHP で生成された検証コードの実装 code_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:45:43747ブラウズ

確認コードを生成する PHP 検証コード生成コードが実装され、セッション ディレクトリがカスタマイズされ、php.ini 内のデフォルトのセッション ファイル保存パスではなくなります。たとえば、次の session_save_path でディレクトリを再定義できます。

確認コードを生成する
PHP チュートリアルでは、以下に示すように、検証コードの実装コードを生成し、セッション ディレクトリが php.ini 内のデフォルトのセッション ファイル保存パスにならないようにカスタマイズします

session_save_path、ディレクトリは再定義できます。
*/
$sesssavepath = dirname(__file__)."/../data/sessions/";
if(is_writeable($sesssavepath) && is_readable($sesssavepath)){ session_save_path($sesssavepath) }
session_start();
$vstr = '';
for($i=0; $i if(function_exists("imagecreate")){
$ntime = time();
if(empty($_session['verifycode_last']) || empty($_session['verifycode']) || ($ntime - $_session['verifycode_last'] > 5)){
$_session['verifycode'] = strto lower($vstr);
$_session['verifycode_last'] = $ntime;
}
$vstr = $_session['verifycode'];
$vstrlen = strlen($vstr);
$img = imagecreate(50,20);
imagecolorallocate($img, 255,255,255);
$line1 = imagecolorallocate($img,240,220,180);
$line2 = imagecolorallocate($img,250,250,170);
for($j=3;$j イメージライン($img,2,$j,48,$j,$line1);
}
for($j=2;$j imageline($img,$j,2,$j-6,18,$line2);
}
$bordercolor = imagecolorallocate($img, 0x99,0x99,0x99);
imagerectangle($img, 0, 0, 49, 19, $bordercolor);
$fontcolor = imagecolorallocate($img, 48,61,50);
for($i=0;$i $bc = mt_rand(0,1);
$vstr[$i] = strtoupper($vstr[$i]);
画像文字列($img, 5, $i*10+6, mt_rand(2,4), $vstr[$i], $fontcolor);
}

header("pragma:no-cachern");
header("キャッシュコントロール:no-cachern");
header("有効期限:0rn");

if(function_exists("imagejpeg")){
header("コンテンツタイプ:画像/jpegrn");
imagejpeg($img);
}その他{
header("コンテンツタイプ:画像/pngrn");
imagepng($img);
}
imagedestroy($img);
exit();
}

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/633002.html技術記事検証コード コードの生成 PHP 生成検証コードの実装コードでは、以下に示すように、php.ini 内のデフォルトのセッション ファイル保存パスにならないようにセッション ディレクトリをカスタマイズします。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。