2007/08/24

PHP Captcha

PHP Captcha Security 有提供 PHP 程式碼,不會很複雜。

程式中可以自訂要使用的字型,不過必須把字型檔位置標示清楚(或是放在同一個目錄下)。
var $font = 'monofont.ttf';

後面有三行程式馬會決定圖片大小和文字字數,可以寫死或是用網頁傳參數。
$width = isset($_GET['width']) && $_GET['height'] < 600 ? $_GET['width'] : '120';
$height = isset($_GET['height']) && $_GET['height'] < 200 ? $_GET['height'] : '40';
$characters = isset($_GET['characters']) && $_GET['characters'] > 2 ? $_GET['characters'] : '6';

中間有三行會分別決定圖片的背景顏色、字體顏色以及雜點的顏色。
$background_color = imagecolorallocate($image, 255, 255, 255);
$text_color = imagecolorallocate($image, 20, 40, 100);
$noise_color = imagecolorallocate($image, 100, 120, 180);

程式產生圖形以後,會把字串記錄在 session 中,以後只要比對表單的字串和 session 中的字串,就可以知道輸入是否正確。

沒有留言:

張貼留言