php 验证码制作(网树注释思想)

yipeiwu_com5年前PHP代码库
1,生成随机数
用for循环确定生成几个随机数。
用随机函数生成范围内随机数。例如rand(1,15),生成1到15之间的数字。
用16位进制函数把生成数字字母化。dechex(rand(1,15))。
用.=运算来保存几个数字。
把生成好的随机数放到$_SESSION[变量]。等将来跟用户提交的内容比较。
2,创建图片
用图片创建函数确定,所创建的图片大小。
例如$im = imagecreatetruecolor(100,30);其中坐标100,30是以网页左上角为原点,$im为图片变量了。
3,设置颜色
使用函数 创建背景色。例如$bg = imagecolorallocate($im,0,0,0);其中0,0,0是三原色数字,$im为上面创建的图片
使用函数 创建字体色。例如$te = imagecolorallocate($im,255,255,255);
4,把字符写在图像左上角
使用函数 imagestring()吧字符写在图像。例如imagestring($im,5,0,0,$rand,$te);$im为上面创建的图片,5是显示方式,0,0
是坐标,$te是字体颜色
5,输出图像
使用函数 header("Content-type:image/jpeg");imagejpeg($im);输出图像。
----------------------------------我是华丽的分割线---------------------------
1,开启session功能;例如session_start();
2,写表单
3,表单提交的验证码 数据 与上面的$_SESSION[变量]比较
相等,验证正确。
不相等,则错误。

相关文章

基于php冒泡排序算法的深入理解

交换排序的基本思想:两两比较待排序的数据,如果发生逆序,则交换之,直到全部数据都排好序为止。•冒泡排序的基本思想:1.从后往前,扫描所有的数据,如果相邻的两个数发生逆序,则互...

php使用curl出现Expect:100-continue解决方法

本文实例讲述了php使用curl出现Expect:100-continue解决方法。分享给大家供大家参考。具体如下: 使用curl POST数据时,如果POST的数据大于1024字节,c...

PHP基于单例模式编写PDO类的方法

一、单例模式简介 简单的说,一个对象(在学习设计模式之前,需要比较了解面向对象思想)只负责一个特定的任务; 二、为什么要使用PHP单例模式?    &n...

PHP实现十进制、二进制、八进制和十六进制转换相关函数用法分析

本文实例讲述了PHP实现十进制、二进制、八进制和十六进制转换相关函数用法。分享给大家供大家参考,具体如下: 1.二进制: 1.1.二进制转十进制: 函数:bindec(string $b...

PHP5 面向对象(学习记录)

1,继承extends 只能单继承 public protected private 属性 __construct() __destruct() __get()读取私有成员 __set(...