<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkPHP5.0 已經很久了,最近有所接觸,下面介紹一下常用的第三方驗證碼功能的使用。 ![](https://box.kancloud.cn/fbc4ad428b757cce036e71688facf109_550x330.jpeg) 功能開發 1).引入第三方擴展包 進行 TP5 的開發,Composer 的使用會成為重要技能 以windows為例子,輸入命令: ~~~ composer require topthink/think-captcha ~~~ 完成上述操作,會在以下目錄中出現 captcha 的擴展包 ~~~ ../vendor/topthink/think-captcha ~~~ 2).前端設置 在前端頁面需要顯示驗證碼的位置,補充 {:captcha_img()} 即可,個人代碼舉例如下: ~~~ p class="pass-form-item"> <label class="pass-label">驗證碼</label> <input type="text" name="verifyCode" class="pass-text-input " placeholder="請輸入驗證碼"> <div>{:captcha_img()}</div> </p> ~~~ ![](https://box.kancloud.cn/14a06c8a8091e884b9c8f728776b2ee4_550x112.png) 3).captcha 擴展包代碼優化 如果按照上述操作,顯示的驗證碼圖片并不能點擊刷新,可自己根據需求進行刷新功能設計;或者,建議進行下面的代碼優化: ~~~ function captcha_img($id = "") { $js_src = "this.src='".captcha_src()."'"; return '<img src="' . captcha_src($id) . '" alt="點擊更新驗證碼" onclick="'.$js_src.'" />'; //return '![](' . captcha_src($id) . ')'; } ~~~ 打開 ../vendor/topthink/think-captcha/src/helper.PHP文件,替換上面的 captcha_img() 方法代碼. 此時的驗證碼圖片即可實時刷新. 4).后臺代碼驗證 根據前端請求而來的 verifyCode 數據,調用 helper.PHP 中的 captcha_check() 方法,進行驗證。 ~~~ if(request()->isPost()){ $data = input('post.'); if(!captcha_check($data['verifyCode'])) { // 校驗失敗 $this->error('驗證碼不正確'); } } ~~~ 提示 建議閱讀 ../vendor/topthink/think-captcha/src/helper.PHP 文件,及 Captcha.PHP ,可以進行樣式的自定義. 如果前端 {:captcha_img()}有傳值 id,那么后臺 captcha_check() 驗證也需要相應的 id 參數區分。 驗證結果,普遍使用 ajax 請求,以滿足用戶順暢的體驗.
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看