phpwind验证码代码讲解

需要gd库支持.
Image 图像函数
参见http://php.liukang.com/manual/zh/ref.image.php
<?php
// BY PHP 国度 www.phphot.be
//关闭报错
error_reporting(0);
//图片宽度
$x_size=60;
//图片高度
$y_size=20;
//生成4个随机字符
$nmsg=num_rand(4);
//支持安全通连接吗?
$S=$_SERVER['SERVER_PORT']=='443' ? 1:0;
//使用cookie记录随机码
//expire=0 cookie将会在会话结束后(一般是浏览器关闭)失效。
 
setCookie('ck_num',md5($nmsg),0,'/','',$S);
//创建宽:60*20的图片(画布)
$aimg = imagecreate($x_size,$y_size);
//设置图片背景色
$back = imagecolorallocate($aimg, 255, 255, 255);
//设置字体颜色
$border = imagecolorallocate($aimg, 0, 0, 0);
//从0,0点填充59*19的白色矩形区域
imagefilledrectangle($aimg, 0, 0, $x_size - 1, $y_size - 1, $back);
//从0,0点绘制59*19的黑色矩形边框
imagerectangle($aimg, 0, 0, $x_size - 1, $y_size - 1, $border);
for ($i=0;$i<strlen($nmsg);$i++){
     //在图片上写字
     imageString($aimg,5,$i*$x_size/4+3,2, $nmsg[$i],$border);
}
header("Content-type: image/png");
imagepng($aimg);
imagedestroy($aimg);exit;
function num_rand($lenth){
     // 播下一个随机数发生器种子
     //php自4.2.0起,,此参数变为可选项,当该项为空时,会被设为随时数
     mt_srand((double)microtime() * 1000000);
     //产生有4个随机数字的字符串
     for($i=0;$i<$lenth;$i++){
        $randval.= mt_rand(0,9);
     }
     //对含有4个数字的字符串使用md5加密,长度是32位的
     //从3长度为32的字符中,自最小数起或最大数32-$lenth起,取长度为$lenth的字符串
     $randval=substr(md5($randval),mt_rand(0,32-$lenth),$lenth);
     return $randval;
}
?> 

时间: 2024-10-31 07:17:01

phpwind验证码代码讲解的相关文章

教程-图片检索系统代码讲解

问题描述 图片检索系统代码讲解 初学者不是很懂有没有大神帮忙讲讲是怎么写出来的,最好能做个视频教程 解决方案 最简单的,用灰度直方图特征向量. 解决方案二: 我估计基本原理很有可能是根据图片来生成md5值完后进行匹配,采样的时候降低分辨率就好了

php实现的加减法验证码代码

 这篇文章主要介绍了php实现的加减法验证码代码,可以使用10以内的加减法生成图片,需要的朋友可以参考下  代码如下: <?php /*图片验证码文件,加减计算方式*/   class ImageCode{    private $Jiashu  = 0;        //加数或者减数  private $JianShu = 0;        //被加数或者被减数  private $YunSuan = '';       //运算符  private $DeShu   = 0;      

Python随机生成一个6位的验证码代码分享

 这篇文章主要介绍了Python随机生成一个6位的验证码代码分享,本文直接给出代码实例,需要的朋友可以参考下     1. 生成源码   代码如下: # -*- coding: utf-8 -*-   import random def generate_verification_code(): ''' 随机生成6位的验证码 ''' code_list = [] for i in range(10): # 0-9数字 code_list.append(str(i)) for i in range

PHP验证码代码的方法

  小编就为大家分享一个漂亮的php验证码类.需要的朋友可以过来参考下! php验证码类代码 width=$width; $this->height=$height; $this->counts=$counts; $this->distrubcode=$distrubcode; $this->fonturl=$fonturl; $this->session=$this->sessioncode(); session_start(); $_SESSION["co

Android刮刮卡实现原理与代码讲解_Android

实现刮刮卡我们可以Get到哪些技能? * 圆形圆角图片的实现原理 * 双缓冲技术绘图 * Bitmap获取像素值数据 * 获取绘制文本的长宽 * 自定义View的掌握 * 获取屏幕密度 * TypeValue.applyDemension * Canvas的一些绘制方法 * Paint的一些常用的属性 * Path的一些方法 刮刮卡的实现原理图   这里用到了13中模式中的DstOut这种模式. 对于这幅图而言,首先绘制Dst,设置xfermode,再绘制Src. 刮刮卡的实现原理步骤 1.绘制

最新最全PHP生成制作验证码代码详解(推荐)_php实例

1.0 首先先看代码 <?php header("Content-Type:text/html;Charset=UTF-");// 设置页面的编码风格 header("Content-Type:image/jpeg");// 通知浏览器输出的是jpeg格式的图像 $img = imagecreatetruecolor(,);//创建画布并设置大小 x轴 y轴 $bgcolor = imagecolorallocate($img, mt_rand(,), mt_

MongoDB快速入门笔记(八)之MongoDB的java驱动操作代码讲解_mariadb

MongoDB的Java驱动是线程安全的,对于一般的应用,只要一个Mongo实例即可,Mongo有个内置的连接池(池大小默认为10个). 下面代码给大家介绍MongoDB的java驱动操作,具体代码如下所示: import java.util.ArrayList; import java.util.List; import java.util.regex.Pattern; import org.bson.Document; import com.mongodb.MongoClient; impo

js 与jquery 点击刷新验证码代码

<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="content-

asp.net验证码代码(无刷新验证码)(1/6)

 asp教程.net验证码代码(无刷新验证码) <%@ page language="c#" autoeventwireup="true" codefile="login.aspx.cs" inherits="login" %> <!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w