We in the actual development, will use the SMS Verification Code and web page verification code, relative to the cost of the page verification code is low, safety factor also can, this article and we introduced in detail PHP production Web-side verification code effect, the use of SMS Verification Code and web Verification Code practice, has a certain reference value, Interested in the small partners can refer to, hope to help everyone.
Next we will do a web-side verification code, directly on the code:
First, the file directory structure:
|----------Phpyanzheng project folder
|----Fonttype folder to put font files, font files generally end with. TTF and. OTF
|----1.php inside PHP language code
|----index.html inside the page layout
1.php
<?php header (' content-type:image/jpeg ');//define the code as JPEG file to parse $width = 120;//defines the width of the image $height = 40;//defines the high $element of the image = Array (' Q ', ' W ', ' e ', ' r ', ' t ', ' y ', ' u ', ' i ', ' o ', ' P ', ' l ', ' K ', ' j ', ' H ', ' G ', ' f ', ' d ', ' s ', ' a ', ' Z ', ' x ', ' C ', ' V ', ' b ', ' n ', ' m ', ' 1 ', ' 2 ', ' 3 ', ' 4 ', ' 5 ', ' 6 ', ' 7 ', ' 8 ', ' 9 ', ' 0 ', ' Q ', ' W ', ' E ', ' R ', ' T ', ' Y ', ' U ', ' I ', ' O ', ' P ', ' A ', ' S ', ' D ', ' F ', ' G ', ' H ', ' J ', ' K ', ' L ', ' M ', ' N ', ' B ', ' V ', ' C ', ' X ', ' Z ');//define an array of display text $string = '; for ($i =0; $i <4; $i + +) {$string. = $element [Rand (0,count ($element)-1)];//randomly generates four text targets} $img = Imagecreatetruecolor ($ width, $height);//Set the validation area width height $colorBg = imagecolorallocate ($img, Rand (185,255), Rand (185,255), Rand (185,255));// Generates a random number of 200-255 $colorBorder = Imagecolorallocate ($img, Rand (50,100), Rand (50,100), Rand (50,100)),//Border color $colorDian = Imagecolorallocate ($img, Rand (0,100), Rand (0,100), Rand (0,100))///Background dot color $colorLine = imagecolorallocate ($img, Rand ( 0,255), Rand (0,255), Rand (0,255)); $colorString = Imagecolorallocate ($img, Rand (20,80), Rand (20,80), Rand (20,80)); Imagefill ($img, 0, 0,$COLORBG)///Set position and background color imagerectangle ($img, 0,0, $width-1, $height-1, $colorBorder);//Draw a border for ($i =0; $i <200; $i + +) { Loop out 200 disturbance points imagesetpixel ($img, rand (0, $width-1), rand (0, $height-1), $colorDian); } for ($i =0; $i <round (5); $i + +) {//loop out 5 interference lines Imageline ($img, rand (0, $width/2), rand (0, $height/2), rand ($width/2,$ width), rand ($height/2, $height), $colorLine); }//imagestring ($img, 4, 0, 0, ' A5DG ', $colorString); Imagettftext ($img, 25,rand (5), Rand (0,40), $colorString, ' Fonttype/princetownstd.otf ', $string); Image name font size tilt angle start position x axis start position y axis color font position display content imagejpeg ($IMG);//Output Image?>
Index.html
<! DOCTYPE html>