Ajax提交表單時驗證碼自動驗證 php後端驗證碼檢測_php執行個體

來源:互聯網
上載者:User

本文通過源碼展示如何?表單提交前,驗證碼先檢測正確性,不正確則不提交表單,更新驗證碼。

1、前端代碼 index.html

 <!DOCTYPE html><html><head> <title>驗證碼提交自驗證</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-Language" content="zh-CN" /></head><body> <form action="doPost.php" method="POST">    <div class="row">   <label for="username">使用者名稱</label>   <input type="text" name="username" id="username" />  </div>  <div class="row">   <label for="mod-captcha-code">驗證碼</label>   <input name="code" id="mod-captcha-code" size="6" class="zjcaptcha" style="width:80px" type="text"/>   <img class="code-img" style="height:30px;width:80px;" src="createcode.php?t=0" onclick="this.src=this.src.substring(0,this.src.indexOf('?')+1)+Math.random();return false;" />   <script type="text/javascript" src="http://www.zjmainstay.cn/jquery/jquery-1.8.2.min.js"></script>   <div class="yzmtips" style="color:red"></div>  </div>  <div class="row">   <input type="submit" value="提交" class="submitBtn"/>  </div> </form><script>(function($){ $(document).ready(function(){  $(".submitBtn").click(function() {   var obj = $(this);   $.ajax({    url:'checkcode.php',    type:'POST',    data:{code:$.trim($("input[name=code]").val())},    dataType:'json',    async:false,    success:function(result) {     if(result.status == 1) {      obj.parents('form').submit(); //驗證碼正確提交表單     }else{      $(".code-img").click();      $(".yzmtips").html('驗證碼錯誤!');      setTimeout(function(){       $(".yzmtips").empty();      },3000);     }    },    error:function(msg){     $(".yzmtips").html('Error:'+msg.toSource());    }   })   return false;  }) });})(jQuery);</script></body></html>

 2、後端驗證碼檢測 checkcode.php

 <?php/*** 使用者驗證碼驗證檔案* @Author:Zjmainstay* @version : 1.0* @creatdate: 2013-10-4*/session_start();echo json_encode(array('status'=>(int)($_SESSION["CHECKCODE"] == $_POST['code'])));exit; 

 源碼下載地址:Ajax實現提交表單時驗證碼自動驗證

以上就是本文的全部內容,希望對大家的學習有所協助,也希望大家多多支援雲棲社區。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.