zoukankan      html  css  js  c++  java
  • 20150117--SQL注入+验证码类-02

    制作验证码

    与图片处理步骤一样,但是字符串随机生成即可。

    clip_image002

    中文写入

    要使用中文,必须满足两个条件:必须要有字体文件,只能使用imagettftext函数

    array imagettftext ( resource $image , 字体大小, 旋转角度 ,起始x , 起始y , 颜色 , 文字字体 ,文字 )

    clip_image004

    封装验证码类

    1. 在前台的公共文件夹中建立一个验证码类:/includes/Captcha.class.php

    clip_image006

    2. 增加属性:长,宽,字体大小,字符串长度,干扰点数量,干扰线的数量

    clip_image008

    3. 初始化属性:构造方法

    a) 配置文件中增加验证码的配置项。/config/config.php

    clip_image010

    b) 初始化的时候,使用配置文件中的默认值。/includes/Captcha.class.php

    clip_image012

    4. 产生验证码图片

    a) 干扰线的制作

    imageline:给指定的画布增加线段

    bool imageline ( resource $image , int $x1 , int $y1 , int $x2 , int $y2 , int $color )

    clip_image014

    b) 干扰点的制作

    bool imagesetpixel ( resource $image , int $x , int $y , int $color ),增加干扰点

    clip_image016

    c) 增加验证码文字

    clip_image018

    项目应用验证码

    1. 图片必须存放到img标签中,才能与其他表单元素一起存在,因此需要在登录界面增加一个img标签用于存放验证码。/admin/templates/login.html

    clip_image020

    2. img标签必须得到图片内容,必须要有src属性,必须请求权限文件。/admin/templates/login.html

    clip_image022

    3. 接收请求,处理请求。/admin/privilege.php?act=captcha

    clip_image024

    4. 直接使用验证码类的对象去产生验证码图片就行。/admin/privilege.php?act=captcha

    clip_image026

    5. 验证验证码信息:用户提交与服务器生成进行比较

    a) 保证服务器生成的验证码能够跨脚本:在生成验证码的时候将验证码存放到session中。/includes/Captcha.class.php

    clip_image028

    b) 接收用户提交的验证码数据。/admin/privilege.php?act=check

    clip_image030

    c) 验证码的合法性验证。/admin/privilege.php?act=check

    clip_image032

    d) 验证码的有效性验证。/admin/privilege.php?act=check

    新增验证码验证方法:/includes/Captcha.class.php

    clip_image034

    调用验证方法验证:/admin/privilege.php?act=check

    clip_image036

    6. 将session开启放到init文件中,因为后台所有的界面都需要使用session。/admin/includes/init.php

    clip_image038

    7. 点击验证码图片更新验证码。通过js事件改变img的src属性。/admin/templates/login.html

    能够让浏览器发起请求的原理:当前的url与之前的url不同了

    clip_image040

    商品分类

    数据表设计

    所有的商品分类都是同样的信息,同时还应该能够区分出谁是谁的子类

    可以通过每条记录增加一个字段,字段叫做父级分类,保存父级分类的id即可。

    clip_image042

  • 相关阅读:
    hdu3487 Play with Chain
    poj3481
    [HNOI2002]营业额统计
    poj3468 A Simple Problem with Integers
    [NOI2004]郁闷的出纳员
    UVa1308 LA2572
    20130620
    poj3580
    20130618
    C++类模版学习笔记
  • 原文地址:https://www.cnblogs.com/lifushan/p/5419466.html
Copyright © 2011-2022 走看看