美文网首页
13.2.2 验证码类的编写1

13.2.2 验证码类的编写1

作者: 曹渊说创业 | 来源:发表于2016-12-24 00:36 被阅读28次

    13.2.2 验证码类的编写1

    code.php

    <?php
        //开启session
        session_start();
        include "vcode.class.php";
        //构造方法
        $vcode = new Vcode(80, 25, 4);
        //将验证码放到服务器自己的空间保存一份
        $_SESSION = $vcode->getcode();
        //将验证码图片输出
        $vcode->outimg();
    

    reg.php

    <body>
        <form action="reg.php" method="post">
            username: <input type="text" name="username"> <br>
            password: <input type="password" name="password"> <br>
            code: <input type="text" size="4" name="code"> 
                  <img src="code.php" />  <br>
    
            <input type="submit" name="dosubmit" value="登 录"> <br>
            
        </form>
    </body>
    

    vcode.class.php

    <?php
        class Vcode {
            private $width;    //宽
            private $height;   //高
            private $num;      //数量
            private $code;    //验证码
    
    
            //构造方法, 三个参数
            function __construct($width, $height, $num) {
                $this->width = $width;
                $this->height = $height;
                $this->num = $num;
                $this->code = $this->createcode(); //调用自己的方法
            }
    
    
    
            //获取字符的验证码, 用于保存在服务器中
            function getcode() {
                return $this->code;
            }
    
                    
    
            //输出图像
            function outimg() {
                //创建背景 (颜色, 大小, 边框)
                $this->createback();
    
                //画字 (大小, 字体颜色)
    
    
                //干扰元素(点, 线条)
                
    
                //输出图像
            }
    
            //创建背景
            private function createback() {
            
            }
    
            //画字
            private function outstring() {
            
            }
    
            //设置干扰元素
            private function setdisturbcolor() {
            
            }
    
            //输出图像
            private function printimg() {
                
            }
    
            //生成验证码字符串
            private function createcode() {
                $codes = "3456789abcdefghijkmnpqrstuvwxyABCDEFGHIJKLMNPQRSTUVWXY";
    
                $code = "";
    
                for($i=0; $i < $this->num; $i++) {
                    $code .=$codes{rand(0, strlen($codes)-1)};  
                }
    
                return $code;
            }
    
        }
    

    相关文章

      网友评论

          本文标题:13.2.2 验证码类的编写1

          本文链接:https://www.haomeiwen.com/subject/esrlvttx.html