91成人在线播放_欧美一区二区视频在线观看_91精品国产高清久久久久久_国产精品久久亚洲不卡4k岛国


待發短信

在線客服
產品支持 短信寶客服
合作渠道 渠道合作
服務咨詢

4001-021-502

工作時間

9:00-21:00

短信寶短信驗證碼開發教程 – 2.準備篇

現在跟著我一起來做短信驗證碼開發前的準備工作,工作需要完成以下幾點:定義目錄結構。使用html+css對案例的頁面進行布局。創建配置文件。編寫開發中的幫助文件和數據驗證文件。好了,開工!!

目錄結構定義工作:

先創建目錄,需要一個項目目錄,配置文件目錄,js文件目錄,字體文件目錄,工具文件目錄。定義完成的目錄結構如下:

sms — 項目目錄

sms/config — 配置文件目錄

sms/js — javascript文件目錄

sms/font — 字體文件目錄

sms/tool — 工具文件目錄

使用html+css對案例的頁面進行布局:

在項目目錄sms下創建register.php文件,用于模擬用戶注冊的界面。其代碼如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <style>
            * {margin:0; padding:0;}
            h1 {margin:30px 0 25px 0;}
            .form-input {margin-bottom:10px;}
            .form-input input {width:200px; height:25px;}
            .form-input button {width:60px; height:25px;}
            #main {width:500px; margin:0 auto;}
            #vcode {width:80px;}
 
            #phone_code {width:80px;}
            .code_label {position:relative;}
            .code_label img {position:absolute; top:-5px; left:185px; cursor: pointer;}
            .code_label button {width:90px; cursor: pointer;}
        </style>
        <script src="js/jquery.js"></script>
    </head>
    <body>
        <div id="main">
            <h1>用戶注冊</h1>
            <form method="post" action="register.php">
                <div class="form-input">
                    <label>
                        手機號碼&emsp;
                        <input type="text" name="phone" value=""/>
                        <p id="phone_err" class="errmsg" style="margin:5px 0 0 88px; color:red;"></p>
                    </label>
                </div>
                <div class="form-input">
                    <label>
                        密&emsp;&emsp;碼&emsp;
                        <input type="password" name="password" value=""/>
                        <p id="phone_err" class="errmsg" style="margin:5px 0 0 88px; color:red;"></p>
                    </label>
                </div>
                <div class="form-input">
                    <label>
                        確認密碼&emsp;
                        <input type="password" name="repassword" value=""/>
                    </label>
                </div>
                <div class="form-input">
                    <label class="code_label">
                        驗&ensp;證&ensp;碼&emsp;
                        <input id="vcode" type="text" name="vcode" value=""/>
                        <img id="code_img" src=""/>
                        <p id="code_err" class="errmsg" style="margin:5px 0 0 88px; color:red;"></p>
                    </label>
                </div>
                <div class="form-input">
                    <label class="code_label">
                        手機驗證碼
                        <input id="phone_code" type="text" name="code" value=""/>
                        <button type="button" id="get_code">獲取驗證碼</button>
                        <p id="phone_err" class="errmsg" style="margin:5px 0 0 88px; color:red;"></p>
                    </label>
                </div>
                <input type="hidden" name="is_send" value="1"/>
                <div class="form-input">
                    <label>
                        <button type="submit">提 交</button>
                    </label>
                </div>
            </form>
        </div>
    </body>
</html>

js文件和字體文件: 在sms/js目錄中添加jquery庫文件在sms/font目錄中添加consola.ttf字體文件。這2個文件在我代碼案例中已經提供,可以拿來直接使用。也可以到網上去下載。

配置文件的使用: 在sms/config目錄下創建config.php這個配置文件,并且在文件中配置自己的短信接口賬號和密碼,在案例中使用的是短信寶的接口,所以直接配置短信寶的賬號密碼就好了。 如果沒有短信寶的賬號和面,可以去他們的官網注冊一個,注冊還免費送短信哦。配置的代碼如下:

?
1
2
3
4
5
<?php
return array(
    'smsbao_name' => '您的短信寶賬號',
    'smsbao_password' => '您的短信寶密碼'
);

工具文件創建: 這里我們需要創建1個工具文件,用于驗證填寫的模擬注冊信息是否正確的。 在sms/tool目錄下創建CheckTool.php 用于負責數據驗證,代碼如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
<?php
class CheckTool
{
    /**
     * @var array 錯誤提示代碼
     */
    private static $errArr array(
        0 => '用戶名不得為空',
        1 => '密碼不能為空',
        2 => '2次輸入的密碼不一致',
        3 => '手機驗證碼不正確',
        4 => '驗證碼不得為空',
        5 => '驗證碼填寫不正確',
        6 => '手機號碼格式不正確',
        7 => '手機號碼必須填寫',
        8 => '請先獲取短信驗證碼',
        9 => '短信驗證碼不正確',
        10 => '密碼不得少于6位數',
        11 => '驗證的手機號碼和當前的手機號碼不一致'
    );
 
    /**
     * 數據執行驗證的總接口
     * @param $data
     * @return bool
     */
    public static function exec($data)
    {
        $errType['phone'] = self::checkPhone($data['phone']);
        $errType['password'] = self::checkPassword($data['password'], $data['repassword']);
        $errType['code'] = self::checkSmsCode($data['code']);
 
        return self::checkErr($errType);
    }
 
    /**
     * 返回錯誤碼,如果驗證沒有錯誤,則返回true
     * @param $errorData
     * @return bool
     */
    public static function checkErr($errorData)
    {
        $cnt count($errorData);
        $postOk = 0;
 
        foreach ($errorData as $key => $item) {
            if (true === $item) {
                $errorData[$key] = '';
                ++$postOk;
            }
        }
 
        return $cnt == $postOk ? true : $errorData;
    }
 
    /**
     * 驗證短信發送的驗證碼是否正確
     * @param $code
     * @return bool|mixed
     */
    public static function checkSmsCode($code)
    {
        if (!isset($_SESSION['sms_code']) || empty($_SESSION['sms_code'])) {
            return self::$errArr[8];
        }
 
        if (0 !== strcmp($_SESSION['sms_code'], $code)) {
            return self::$errArr[9];
        }
 
        return true;
    }
 
    /**
     * 驗證密碼的正確性,以及2次輸入是否一致。
     * @param $password
     * @param $repassword
     * @return bool|mixed
     */
    public static function checkPassword($password$repassword)
    {
        if (empty($password)) {
            return self::$errArr[1];
        }
 
        if (!is_string($password) || strlen($password) < 6) {
            return self::$errArr[10];
        }
 
        if (0 !== strcmp($password$repassword)) {
            return self::$errArr[2];
        }
 
        return true;
    }
 
    /**
     * 驗證用戶名
     * @param $name
     * @return bool|mixed
     */
    public static function checkName($name)
    {
        if (empty($name)) {
            return self::$errArr[0];
        }
 
        return true;
    }
 
 
    /**
     * 驗證碼的驗證
     * @param $code
     * @return bool|mixed
     */
    public static function checkCode($code)
    {
        if (empty($code)) {
            return self::$errArr[4];
        }
 
        session_start();
        $code strtolower($code);
        $sessionCode strtolower($_SESSION['code']);
 
        if (0 !== strcmp($code$sessionCode)) {
            return self::$errArr[5];
        }
 
        return true;
    }
 
    /**
     * 手機號碼驗證規則
     * @param $phone
     * @return bool|mixed
     */
    public static function checkPhone($phone)
    {
        if (empty($phone)) {
            return self::$errArr[7];
        }
 
        $isOk = preg_match('/^13[0-9]{1}[0-9]{8}$|15[0189]{1}[0-9]{8}$|189[0-9]{8}$/'$phone);
 
        if (!$isOk) {
            return self::$errArr[6];
        }
 
        if (isset($_SESSION['send_phone'])) {
            if (0 !== strcmp($_SESSION['send_phone'], $phone)) {
                return self::$errArr[11];
            }
        }
 
        return true;
    }
}

	準備工作完成,后面的文章帶大家進入正式開發階段。
開源插件

最新更新

電商類

CMS類

微信類

文章標簽
91成人在线播放_欧美一区二区视频在线观看_91精品国产高清久久久久久_国产精品久久亚洲不卡4k岛国
日本韩国精品在线| 亚洲一级在线观看| 99免费精品视频| 日韩精品1区2区3区| 日韩理论片网站| 国产精品美女视频| 国产三级精品三级在线专区| 欧美精品一区二区久久婷婷| 91精品国产乱码久久蜜臀| 4438成人网| 欧美一区二区视频在线观看2020 | 一区二区三区免费观看| 一区二区三区欧美日韩| 亚洲电影在线免费观看| 免费成人深夜小野草| 狠狠久久亚洲欧美| 成人av网址在线观看| 在线亚洲一区观看| 日韩精品中文字幕一区二区三区 | 色丁香久综合在线久综合在线观看| 91麻豆123| 欧美精品一卡二卡| 久久亚洲精精品中文字幕早川悠里| 亚洲精品一线二线三线无人区| 久久亚洲春色中文字幕久久久| 久久精品av麻豆的观看方式| 一区二区视频在线| 国产一区999| 一本一道久久a久久精品综合蜜臀| 国产一区二区女| 亚洲综合成人在线视频| 自拍偷拍欧美激情| 国产亚洲精久久久久久| 欧美一区国产二区| 日本高清不卡视频| 播五月开心婷婷综合| 中文字幕久久午夜不卡| 91美女精品福利| 91精品国产高清一区二区三区 | 中文字幕一区在线观看| 精品国精品国产尤物美女| 在线免费亚洲电影| 91香蕉视频污在线| 不卡的av电影| 大陆成人av片| 成人综合在线网站| 国产盗摄女厕一区二区三区 | 色屁屁一区二区| 天堂蜜桃一区二区三区| 精品国产百合女同互慰| 亚洲一区二区三区激情| 一区二区在线电影| 成人av第一页| heyzo一本久久综合| 日韩精品中午字幕| 久久久精品tv| 国产婷婷一区二区| 中文字幕日韩精品一区| 亚洲色图第一区| 国产日韩欧美不卡| 91黄视频在线| 亚洲欧洲中文日韩久久av乱码| 国产精品日产欧美久久久久| 国产精品欧美一区喷水| 亚洲免费在线电影| 亚洲男同性视频| 亚洲线精品一区二区三区八戒| 亚洲成人中文在线| 国产揄拍国内精品对白| 图片区小说区国产精品视频| 亚洲成人av在线电影| 免费高清成人在线| 精品午夜一区二区三区在线观看| 国产毛片精品视频| 99久久99久久久精品齐齐| 国产成人av自拍| 激情综合色播五月| 国产宾馆实践打屁股91| 97精品电影院| 7777精品伊人久久久大香线蕉| 欧美成人一区二区三区| 综合久久久久久久| 日韩主播视频在线| 成人avav在线| 欧美日韩极品在线观看一区| 国产日韩一级二级三级| 欧美国产综合一区二区| 亚洲国产精品一区二区尤物区| 久久精品国产免费看久久精品| 成人国产电影网| 欧美日韩国产欧美日美国产精品| 久久久五月婷婷| 亚洲精品ww久久久久久p站| 免费在线观看日韩欧美| 成人国产精品免费观看动漫| 欧美一区二区三区色| 国产精品久久久久影院| 国产性天天综合网| 91无套直看片红桃| 欧美精品一区二区三区视频| 亚洲美女一区二区三区| 国产一区二区三区av电影 | 国产精品久久久久三级| 91麻豆精品国产无毒不卡在线观看| 欧美一二三区在线观看| 亚洲精品ww久久久久久p站| 狠狠v欧美v日韩v亚洲ⅴ| 欧美在线影院一区二区| 国产欧美日韩另类视频免费观看| 亚洲丰满少妇videoshd| av亚洲精华国产精华| 久久久精品免费免费| 日韩成人精品在线观看| 欧美视频中文一区二区三区在线观看 | 国产真实精品久久二三区| 欧美中文字幕不卡| 国产精品国产三级国产aⅴ无密码| 美国三级日本三级久久99| 欧美视频一区二区三区四区| 国产精品美女久久久久久2018| 免费观看一级特黄欧美大片| 欧美亚洲禁片免费| 亚洲视频一二三| 国产剧情在线观看一区二区| 日韩视频在线观看一区二区| 午夜欧美电影在线观看| 色狠狠一区二区| 亚洲卡通欧美制服中文| 91小视频在线| 亚洲天堂福利av| 不卡欧美aaaaa| 在线观看日韩精品| 日韩一二三区不卡| 午夜欧美电影在线观看| 欧美久久一区二区| 丝袜美腿成人在线| 91.麻豆视频| 日本大胆欧美人术艺术动态| 欧美理论在线播放| 午夜精品视频在线观看| 欧美一区二视频| 蜜桃视频免费观看一区| www激情久久| 丁香婷婷综合色啪| 69久久99精品久久久久婷婷| 不卡av在线网| 亚洲欧美激情插| 欧美亚洲国产一区在线观看网站| 亚洲韩国精品一区| 欧美精品欧美精品系列| 免费欧美日韩国产三级电影| 日韩美女在线视频| 成人高清在线视频| 亚洲综合视频在线观看| 91精品国产91久久久久久最新毛片 | 国产女人水真多18毛片18精品视频| 亚洲综合视频在线| 欧美日韩在线一区二区| 国产欧美日韩视频在线观看| 亚洲美女免费在线| 狠狠色综合播放一区二区| 欧美一区二区视频网站| 国产精品一区专区| 欧美精品久久天天躁| 视频一区中文字幕国产| 国产性做久久久久久| 色激情天天射综合网| 精品亚洲aⅴ乱码一区二区三区| 亚洲国产精品99久久久久久久久 | 久久99精品久久久久婷婷| 久久蜜桃av一区精品变态类天堂| 91蝌蚪国产九色| 日本成人在线一区| 亚洲欧美另类小说| 欧美成人在线直播| 在线影院国内精品| 亚洲天堂a在线| 亚瑟在线精品视频| 国产亚洲一区二区在线观看| 欧美中文字幕久久| 国产一区不卡在线| 日韩在线卡一卡二| 中文成人综合网| 欧美草草影院在线视频| 欧美亚洲日本国产| 福利一区二区在线| 日韩va亚洲va欧美va久久| 91精品蜜臀在线一区尤物| 丁香一区二区三区| 91在线云播放| 欧美日本一区二区三区四区| 日本免费在线视频不卡一不卡二| 黄网站免费久久| 日韩成人精品在线观看| 最近日韩中文字幕| 国产日韩高清在线| 欧美电影免费观看高清完整版| 色一情一乱一乱一91av| 成人性生交大片免费看视频在线 | 一区二区三区在线免费视频|