Heim >php教程 >php手册 >Eine tolle Erweiterung für thinkphp5 gemacht

Eine tolle Erweiterung für thinkphp5 gemacht

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOriginal
2016-08-15 16:49:592086Durchsuche

Ich habe eine ultimative Erweiterung für thinkphp5 erstellt und sie mit Composer

installiert Komponist benötigt lilwil/geetest
Verwenden Sie

Parameterkonfiguration

Um die Geetest-Konfiguration in der Konfigurationsdatei zu konfigurieren, müssen Sie auf der offiziellen Website //Example<code class="prettyprint linenums lang-php">//举例<br> 'geetest'               => [<br>        'captcha_id'=>'40c653bd06de23cece65d180d94b937f',<br>        'private_key'=>'0c54bad6d2419733de49db4826d83942',<br>     ], anwenden 'geetest' =>         'captcha_id'=>'40c653bd06de23cece65d180d94b937f',<!-- 为使用方便,直接使用jquery.js库 --><br> <script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script><br> <!-- 引入封装了failback的接口--initGeetest --><br> <script src="http://static.geetest.com/static/tools/gt.js"></script><br> <script><br> function doOk(){<br>     //TODO:验证成功,对表单的操作<br>     // $("#embed-submit").attr("disabled", false);  <br>     // $("#embed-submit").attr("style", 'background:#fe693e'); <br> }<br> var handlerEmbed = function (captchaObj) {<br>     // 将验证码加到id为captcha的元素里<br>     captchaObj.appendTo("#embed-captcha");<br>     captchaObj.onSuccess(doOk);<br>     captchaObj.onReady(function () {<br>         //TODO:页面加载完毕之后执行的方法<br>         // $("#embed-submit").attr("disabled", true);  <br>         // $("#embed-submit").attr("style", 'background:#A79995');  <br>         //$("#wait")[0].className = "hide";<br>     });<br> };<br> $.ajax({<br>    // 获取id,challenge,success(是否启用failback)<br>    url: "{:geetest_url()}?t="   (new Date()).getTime(), // 加随机数防止缓存<br>    type: "get",<br>    dataType: "json",<br>    success: function (data) {<br>    // 使用initGeetest接口<br>    // 参数1:配置参数<br>    // 参数2:回调,回调的第一个参数验证码对象,之后可以使用它做appendTo之类的事件<br>    initGeetest({<br>         gt: data.gt,<br>         challenge: data.challenge,<br>         product: "float", // 产品形式,包括:float,embed,popup。注意只对PC版验证码有效<br>         offline: !data.success // 表示用户后台检测极验服务器是否宕机,一般不需要关注<br>       }, handlerEmbed);<br>    }<br> });<br> </script><br> 控制器里验证<br> <br> //需要传入$_POST请求的数据<br> if(!geetest_check($post)){<br>  //验证失败<br> };         'private_key'=>'0c54bad6d2419733de49db4826d83942', ],Rufen Sie die Vorlage auf<!--Für eine einfachere Verwendung verwenden Sie direkt die jquery.js-Bibliothek --> <script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script><br> <!--Einführung einer Schnittstelle, die Failback kapselt –initGeetest –><img src="/static/imghwm/default1.png" data-src="/Uploads/editor/2016-08-11/57abf5e34d6ab.png" class="lazy" alt="Eine tolle Erweiterung für thinkphp5 gemacht" > <script src="http://static.geetest.com/static/tools/gt.js"></script><br> <script><p class="da_word"> Funktion doOk(){<think id="ad_196de4c105c1d8be"> //TODO: Überprüfung erfolgreich, Vorgang im Formular</think> // $("#embed-submit").attr("disabled", false); // $("#embed-submit").attr("style", 'background:#fe693e'); }</p> var handlerEmbed = function (captchaObj) {

//Den Bestätigungscode zum Element mit der Captcha-ID hinzufügen captchaObj.appendTo("#embed-captcha"); captchaObj.onSuccess(doOk); captchaObj.onReady(function () { ​​​​ //TODO: Methode, die nach dem Laden der Seite ausgeführt werden soll             // $("#embed-submit").attr("disabled", true);                 // $("#embed-submit").attr("style", 'background:#A79995');              //$("#wait")[0].className = "hide"; }); }; $.ajax({ // ID, Herausforderung, Erfolg abrufen (ob Failback aktiviert ist) URL: "{:geetest_url()}?t=" (new Date()).getTime(), // Zufallszahlen hinzufügen, um Caching zu verhindern Geben Sie ein: „get“, Datentyp: „json“, Erfolg: Funktion (Daten) { //InitGeetest-Schnittstelle verwenden // Parameter 1: Konfigurationsparameter // Parameter 2: Rückruf, der erste Parameter des Rückrufs ist das Bestätigungscodeobjekt, das später für Ereignisse wie appendTo verwendet werden kann initGeetest({          gt: data.gt, Herausforderung: data.challenge, Produkt: „float“, // Produktform, einschließlich: float, embed, popup. Beachten Sie, dass der Bestätigungscode nur für die PC-Version gültig ist Offline:! Data.success // zeigt an, ob der Polar-Testserver im Hintergrund ausgefallen ist. Im Allgemeinen besteht keine Notwendigkeit, darauf zu achten         }, handlerEmbed); } }); Im Controller überprüfen //Sie müssen die Daten der $_POST-Anfrage übergeben if(!geetest_check($post)){ //Verifizierung fehlgeschlagen };Effekt
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Thinkphp5.0 ruft die Datenmethode der kostenlosen API-Schnittstelle aufNächster Artikel:Thinkphp5.0 ruft die Datenmethode der kostenlosen API-Schnittstelle auf

In Verbindung stehende Artikel

Mehr sehen