php 实现验证码制作

先给看下 大致的效果

那么接下来的就直接贴代码吧

<?php

    $image = imagecreatetruecolor(100, 30); //创建画布

    $imagecolor = imagecolorallocate($image, 255, 255, 255);  //背景色

    imagefill($image, 0, 0, $imagecolor);  //填充背景色

    for($i=0;$i<4;$i++ ){                  //循环4位数

        $fontsize = 6;
        $fontcolor = imagecolorallocate($image, rand(0, 200), rand(0, 200), rand(0, 200));
        $fontcontent = rand(0, 9);

        $x = $i*100/4 + rand(5, 15);
        $y = rand(5, 10);

        imagestring($image, $fontsize, $x, $y, $fontcontent, $fontcolor);
    }

    for($i=0;$i<200;$i++ ){              //循环 添加干扰点

        $pointcolor = imagecolorallocate($image, rand(50, 200), rand(50, 200), rand(50, 200));

        $x = rand(1, 99);
        $y = rand(1, 29);

        imagesetpixel($image, $x, $y, $pointcolor);
    }

    for($i=0;$i<3;$i++){                //循环 添加干扰线    

        $linecolor = imagecolorallocate($image, rand(100, 250), rand(100, 250), rand(100, 250));

        $x1 = rand(1, 25);
        $x2 = rand(50, 75);

        $y1 = rand(1, 15);
        $y2 = rand(15, 25);

        imageline($image, $x1, $y1, $x2, $y2, $linecolor);
    }

    header("content-type:image/png");

    imagepng($image);

    imagedestroy($image);

?>
时间: 2024-11-10 14:20:02

php 实现验证码制作的相关文章

网站验证码制作

asp.net验证码制作 using System; using System.IO; using System.Drawing; using System.Drawing.Imaging; using System.Text; using System.Collections; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebPa

动态验证码制作(RandomCodeImage )

在很多的网页中,他们的登录,注册等等地方都有验证码的存在,这下验证码都是动态生成的,有些验证码模糊不堪,有些干扰很多, 而验证码是用来干什么的呢?防止人为输入的不安全?错,验证码真正的用途在于,防止机器的识别,所以,验证码往往都是图片格式的, 人可以识别出来,而机器就识别不出来,这样就可以防止机器识别,就可以保证正在操作的是人,而并不是机器的操作,安全性更高: 下面就分享一下我自己写得一个简单的验证码制作的代码!希望可以一起学习,有什么不足,敬请指正: 这是我封装的一个验证码制作的java类:

浅尝Java验证码制作(上)

相信大家对验证码这玩意不会陌生,无论是申请账号还是某些情况下登录时都会要求输入验证码.经过统计,验证码一次验证就成功通过的概率是90%,并不高,那么很多人对于这种降低用户体验度的设计肯定会怀疑他的必要性,但黑格尔说过:凡是合乎理性的东西都是现实的:凡是现实的东西都是合乎理性的.接下来我们来了解一下验证码. 验证码是一种区别用户是计算机还是人的公共全自动程序,他被用于防止恶意破解密码.刷票.论坛灌水,防止黑客通过暴力破解方式不断地登录,应用于银行.社区.论坛.投票系统等等. 废话不多说我们来看看我

MVC-简单验证码制作

1.制作验证码: using System; using System.Collections.Generic; using System.Drawing; using System.Drawing.Drawing2D; using System.Drawing.Imaging; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Web; using

webform:图片水印、验证码制作

一.图片水印 1:引命名空间System.Drawing; 前端代码 <div> <asp:FileUpload ID="FileUpload1" runat="server" /> <asp:Button ID="Button1" runat="server" Text="上传" /><br /> <asp:Image ID="Image1&

PHP实现验证码制作

captcha.php(PHP产生验证码并储存Session): <?php //开启Session session_start(); //绘制底图 $image = imagecreatetruecolor(100, 30);//返回资源型的值 $bgcolor = imagecolorallocate($image, 255, 255, 255);//创建一个底图 imagefill($image, 0, 0, $bgcolor);//区域填充 /* //输出随机数字 for($i = 0;

验证码制作

Bitmap bit = new Bitmap(90, 40);//画布大小 Graphics g = Graphics.FromImage(bit);//创建绘制对象,告诉它往哪张图片上绘制 Random r = new Random(); string s = ""; Color color1 = Color.FromArgb(r.Next(155, 255), r.Next(155, 255), r.Next(155, 255)); g.FillRectangle(new Sol

图片验证码制作

default.aspx里:包含点击图片更新的js代码 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default3.aspx.cs" Inherits="Default3" %> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> &l

【2017-6-9】WebForm 随机验证码制作

前台代码 <body> <form id="form1" runat="server"> <div> <br /> <br /> <%--用户输入的文本框--%> <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> <%--验证码图片--%> <img

12-8-协议、请求、响应、画布(验证码制作)

fwrite(文件句柄,写入内容)         返回值为写入文件的字节长度 fopen(文件路径,打开方式)          这个便是文件句柄 fclose(文件句柄)              关闭文件句柄 文件句柄打开后,可以对文件进行读写操作,关闭文件句柄便不能再对文件进行读写操作了. copy(被复制文件路径,复制后存放文件的路径)                 复制文件 存放位置要包含文件名 unlink(文件路径)              删除文件 filemtime(文件