<?php Random generation of a 4-digit number verification code $num = ""; For ($i =0 $i <4; $i + +) {$num. = rand (0,9); } 4-bit Authenticode can also be generated directly with Rand (1000,9999) Writes the generated validation code to the session, and the Prepare validation page uses Session_Start (); $_session["Checknum"] = $num; Create a picture that defines the color value Header ("Content-type:image/png"); Srand (Double) microtime () *1000000); $im = Imagecreate (60,20); $black = Imagecolorallocate ($im, 0,0,0); $gray = Imagecolorallocate ($im, 200,200,200); Imagefill ($im, 0,0, $gray); Randomly draw two dashed lines to play a disturbing role $style = Array ($black, $black, $black, $black, $black, $gray, $gray, $gray); Imagesetstyle ($im, $style); $y 1=rand (0,20); $y 2=rand (0,20); $y 3=rand (0,20); $y 4=rand (0,20); Imageline ($im, 0, $y 1, $y 3, img_color_styled); Imageline ($im, 0, $y 2, $y 4, img_color_styled) A large number of black spots are randomly generated on the canvas, which plays a disturbing role. For ($i =0 $i <80; $i + +) { Imagesetpixel ($im, Rand (0,60), Rand (0,20), $black); } The four digits are randomly displayed on the canvas, and the horizontal spacing and position of the characters are randomly generated according to a certain range of fluctuations. $strx =rand (3,8); For ($i =0 $i <4; $i + +) { $strpos =rand (1,6); Imagestring ($im, 5, $strx, $strpos, substr ($num, $i, 1), $black); $strx +=rand (8,12); } Imagepng ($im); Imagedestroy ($im); ?> |