Maison > développement back-end > tutoriel php > php-生成验证码 php验证码下载 php邮箱验证码 php网站验证

php-生成验证码 php验证码下载 php邮箱验证码 php网站验证

WBOY
Libérer: 2016-07-29 08:50:45
original
1055 Les gens l'ont consulté
<span><?php </span><span><em>/**
</em></span><span><em> * Created by PhpStorm.
</em></span><span><em> * User: 
</em></span><span><em> * Date: 2016/4/20
</em></span><span><em> * Time: 20:07
</em></span><span><em> */
</em></span><span><em></em></span><span>session_start()</span><span>;
</span><span>//</span><span>画一张背景图
</span><span>$image</span><span>=imagecreatetruecolor(</span><span>100</span><span>,</span><span>30</span><span>)</span><span>;
</span><span>$bgcolor</span><span>=imagecolorallocate(</span><span>$image</span><span>,</span><span>255</span><span>,</span><span>255</span><span>,</span><span>255</span><span>)</span><span>;
</span><span>imagefill(</span><span>$image</span><span>,</span><span>0</span><span>,</span><span>0</span><span>,</span><span>$bgcolor</span><span>)</span><span>;
</span><span>/*//</span><span>生成四位随机数字</span><span>   for($i=0;$i<span>      $f
</span><span>      $f
</span><span>      $f
</span><span>      //</span><span>数字的显示位置</span><span>      $x=($i*100/4)+rand(5,9);
</span><span>      $y=rand(5,10);
</span><span>      imagestring($image,$fonsize,$x,$y,$fontcontent,$foncolor);
</span><span>   }*/
</span><span>$captch_code</span><span>=</span><span>''</span><span>;
</span><span>//</span><span>生成数字字母混合验证码
</span><span>for</span><span>(</span><span>$i</span><span>=</span><span>0</span><span>;</span><span>$i</span><span><span>4</span><span>;</span><span>$i</span><span>++){
</span><span>$fonsize</span><span>=</span><span>6</span><span>;
</span><span>$fontcolor</span><span>=imagecolorallocate(</span><span>$image</span><span>,</span><span>rand(</span><span>0</span><span>,</span><span>120</span><span>)</span><span>,</span><span>rand(</span><span>0</span><span>,</span><span>120</span><span>)</span><span>,</span><span>rand(</span><span>0</span><span>,</span><span>120</span><span>))</span><span>;
</span><span>$data</span><span>=</span><span>"abcdefghjklmnpqrstuvwxy13456789"</span><span>;
</span><span>$fontcontent</span><span>=substr(</span><span>$data</span><span>,</span><span>rand(</span><span>0</span><span>,</span><span>strlen(</span><span>$data</span><span>))</span><span>,</span><span>1</span><span>)</span><span>;
</span><span>$captch_code</span><span>.=</span><span>$fontcontent</span><span>;
</span><span>//</span><span>验证码的位置
</span><span>$x</span><span>=(</span><span>$i</span><span>*</span><span>100</span><span>/</span><span>4</span><span>)+rand(</span><span>5</span><span>,</span><span>10</span><span>)</span><span>;
</span><span>$y</span><span>=rand(</span><span>5</span><span>,</span><span>10</span><span>)</span><span>;
</span><span>//
</span><span>imagestring(</span><span>$image</span><span>,</span><span>$fonsize</span><span>,</span><span>$x</span><span>,</span><span>$y</span><span>,</span><span>$fontcontent</span><span>,</span><span>$fontcolor</span><span>)</span><span>;
</span><span>}
</span><span>$_SESSION</span><span>[</span><span>'authcode'</span><span>]=</span><span>$captch_code</span><span>;
</span><span>//</span><span>添加干扰元素</span><span>:</span><span>点
</span><span>for</span><span>(</span><span>$i</span><span>=</span><span>0</span><span>;</span><span>$i</span><span><span>200</span><span>;</span><span>$i</span><span>++){
</span><span>$pointcolor</span><span>=imagecolorallocate(</span><span>$image</span><span>,</span><span>rand(</span><span>55</span><span>,</span><span>200</span><span>)</span><span>,</span><span>rand(</span><span>55</span><span>,</span><span>200</span><span>)</span><span>,</span><span>rand(</span><span>55</span><span>,</span><span>200</span><span>))</span><span>;
</span><span>imagesetpixel(</span><span>$image</span><span>,</span><span>rand(</span><span>1</span><span>,</span><span>99</span><span>)</span><span>,</span><span>rand(</span><span>1</span><span>,</span><span>99</span><span>)</span><span>,</span><span>$pointcolor</span><span>)</span><span>;
</span><span>}
</span><span>//</span><span>添加干扰元素:线
</span><span>for</span><span>(</span><span>$i</span><span>=</span><span>0</span><span>;</span><span>$i</span><span><span>3</span><span>;</span><span>$i</span><span>++){
</span><span>$linecolor</span><span>=imagecolorallocate(</span><span>$image</span><span>,</span><span>rand(</span><span>80</span><span>,</span><span>220</span><span>)</span><span>,</span><span>rand(</span><span>80</span><span>,</span><span>220</span><span>)</span><span>,</span><span>rand(</span><span>80</span><span>,</span><span>220</span><span>))</span><span>;
</span><span>imageline(</span><span>$image</span><span>,</span><span>rand(</span><span>1</span><span>,</span><span>99</span><span>)</span><span>,</span><span>rand(</span><span>1</span><span>,</span><span>29</span><span>)</span><span>,</span><span>rand(</span><span>1</span><span>,</span><span>99</span><span>)</span><span>,</span><span>rand(</span><span>1</span><span>,</span><span>29</span><span>)</span><span>,</span><span>$linecolor</span><span>)</span><span>;
</span><span>}
</span><span>   header(</span><span>'content-type: image/png'</span><span>)</span><span>;
</span><span>imagepng(</span><span>$image</span><span>)</span><span>;
</span><span>imagedestroy(</span><span>$image</span><span>)</span><span>;
</span><span>?></span></span></span></span></span></span>
Copier après la connexion

以上就介绍了php-生成验证码,包括了验证码,php方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal