图片验证码文件,加减法计算方式

/**
 * 图片验证码文件,加减法计算方式
 */
class ImageCode {
    private $jiashu = 0;//加数或者减数
    private $jianshu = 0;//被加数或者被减数
    private $yunsuan = ‘‘;//运算符
    private $deshu = 0;//得数
    private $string = ‘‘;//字符串样式
    private $img;   //图片对象
    private $width = 100;//图片宽度
    private $height = 50;//图片高度
    private $ttf = ‘arial.ttf‘; //字体文件
    private $session = ‘code‘;//session 变量

private function jiashu() {
        //header(‘Content-type:image/png‘);
        header("Content-type:image/JPEG");
        $this->jiashu = rand(1,10);
        $this->jianshu = rand(1,10);
        $this->yunsuan = $this->jiashu > $this->jianshu ? ‘-‘:‘+‘;
        $this->deshu = $this->jiashu > $this->jianshu ? $this->jiashu - $this->jianshu:$this->jiashu + $this->jianshu;
    }
    public function show($w = 100,$h=50,$t=‘arial.ttf‘,$code=‘code‘) {
        $this->jiashu();
        $this->string = $this->jiashu.$this->yunsuan.$this->jianshu.‘=?‘;
        $this->width =$w;
        $this->height = $h;
        $this->ttf = $t;
        $this->session = $code;
        session_start();
        $_SESSION[$this->session] = $this->deshu;
        $this->images();
    }

private function images() {
        $this->img = imagecreate($this->width, $this->height);
        $background_color = imagecolorallocate($this->img, 255, 255, 255);
        imagecolortransparent($this->img,$background_color);
        imagettftext($this->img,14,0,1,20,imagecolorallocate($this->img, 0, 0, 0),$this->ttf,$this->string);
        $this->echoImages();
    }

private function echoImages() {
        imagepng($this->img);//以PNG格式将图像输出到浏览器
        imagedestroy($this->img);//销毁图像
    }
}
$ImageCode = new ImageCode;
$ImageCode->show(130,35,‘arial.ttf‘,‘code‘);

时间: 2024-10-03 14:55:36

图片验证码文件,加减法计算方式的相关文章

Webform 文件上传、 C#加图片水印 、 图片验证码

文件上传:要使用控件 - FileUpload 1.如何判断是否选中文件? FileUpload.FileName - 选中文件的文件名,如果长度不大于0,那么说明没选中任何文件 js - f.value.length 2.如何保存到服务器上? FileUpload.SaveAs("绝对路径"); 3.如何获得绝对路径? 先编写相对路径 - "UpLoads/abc.txt" 将相对路径映射成绝对路径 - Server.MapPath("UpLoads/a

在ASP.NET中实现图片、视频文件上传方式

一.图片 1.在前端用<asp:FileUpload ID="UpImgName" runat="server"/>控件 2.在后台.cs中写上 protected void btnSubmit_Click(object sender,EventArgs e) { string strImgPath=string.Empty; string strDateTime=dateTime.Now.Tostring("yyyyMMddhhmmss&qu

mysql中以blob形式存储的图片文件 通过ajax方式传输 在js中设置成img控件的src

第一步,读取blob数据, 第二步,将blob数据转换成byte数组 第三步,将byte数据进行base64加密转换成字符串并回传 第四步,接收字符串 第五步,将img控件的src设置成"data:image/jpeg;base64,"+接收的字符串; 相关代码: java: public String getAccountImg(String alias) { String sql = "SELECT imgrawdata FROM wx_account WHERE ali

转-关于图片或者文件在数据库的存储方式归纳

商品图片,用户上传的头像,其他方面的图片.目前业界存储图片有两种做法: 1.  把图片直接以二进制形式存储在数据库中 一般数据库提供一个二进制字段来存储二进制数据.比如mysql中有个blob字段.oracle数据库中是blob或bfile类型 2.  图片存储在磁盘上,数据库字段中保存的是图片的路径. 一.图片以二进制形式直接存储在数据库中 第一种存储实现(php语言): 大体思路: 1.将读取到的图片用php程序转化成二进制形式.再结合insert into 语句插入数据表中的blob类型字

PHP编写的图片验证码类文件分享方法

适用于自定义的验证码类! <?php /* * To change this license header, choose License Headers in Project Properties.* To change this template file, choose Tools | Templates* and open the template in the editor.*/Class Image{ private $img;public $width = 85;public $h

字符型图片验证码识别完整过程及Python实现

1   摘要 验证码是目前互联网上非常常见也是非常重要的一个事物,充当着很多系统的 防火墙 功能,但是随时OCR技术的发展,验证码暴露出来的安全问题也越来越严峻.本文介绍了一套字符验证码识别的完整流程,对于验证码安全和OCR识别技术都有一定的借鉴意义. 2   关键词 关键词:安全,字符图片,验证码识别,OCR,Python,SVM,PIL 3   免责声明 本文研究所用素材来自于某旧Web框架的网站 完全对外公开 的公共图片资源. 本文只做了该网站对外公开的公共图片资源进行了爬取, 并未越权 

java图片验证码包括文字和图片的旋转

java图片验证码包括文字图片的旋转: 此例子演示的是两位数的加减运算,需要的可以通过自己的修改获得更多的方式: 或者我上传的资源中也有其他的两种方式供选择:http://download.csdn.net/detail/huitoukest/8043711 package com.utils; import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java.awt.Graphics2D; im

验证码识别与生成类API调用的代码示例合集:六位图片验证码生成、四位图片验证码生成、简单验证码识别等

以下示例代码适用于 www.apishop.net 网站下的API,使用本文提及的接口调用代码示例前,您需要先申请相应的API服务. 六位图片验证码生成:包括纯数字.小写字母.大写字母.大小写混合.数字+小写.数字+大写.数字+大小写等情况. 四位图片验证码生成:包括纯数字.小写字母.大写字母.大小写混合.数字+小写.数字+大写.数字+大小写等情况. 简单验证码识别:验证码类型 : 数字+字母, 纯英文, 纯数字,计算题 英数_验证码识别:纯数字,纯英文,数字+英文 中英数_验证码识别:英文.数

注册登录时本地图片验证码

在一些公司的项目中,为了避免刷注册量等,大多数人会采取绘制本地图片验证码来减少这些操作. 这样注册时,不仅需要判断手机验证码,还要判断一次本地的图片验证码. 首先展示下效果图: 点击获取手机验证码时或者填写完基本信息点击注册按钮时,都会判断图片验证码是否正确,不正确的话晃动验证码,改变图片内容. 其实图案内容和那几个线都是绘制出来的,图案内容,线的长度,背景颜色,线的颜色都是随机变化的. 实现绘制验证码的方法是: #import <UIKit/UIKit.h> @interface Captc