thinkphp 架構中的一部分方法解析

來源:互聯網
上載者:User

標籤:trim   create   檔案夾   ret   執行   put   head   public   date   

 1 thinkphp 架構 中判斷輸入的數值和資料庫中的數值是否一致

   首先 需要在view檔案夾下建一個模板 名為zhuce.html

<html><head>    <script src="__ROOT__/Public/js/jquery-1.11.2.min.js"></script></head><body>        <div> 帳號:<input type="text" name="num" id="uid"></div>        <div id="ts"></div></body></html>

我在控制器TextController.class.php中寫了一個方法zhuce(),顯示模板

function zhuce(){    $this->show();}

這裡需要用到ajax來寫的,首選需要引入jquery包 已經在上面引入了

<script type="text/javascript">   $("#uid").blur(function(){    var num = $(this).val();    $.ajax({        url:"__CONTROLLER__/chuli",        data:{num:num},        type:"POST",        dataType:"TEXT",        success:function(data)          {               if(data.trim()=="1")                  {                      $("#ts").html("此帳號已經存在");                   }               else                    {                         $("#ts").html("此帳號可用");                  }           }})})</script>

上面涉及到一個chuli方法,那麼這兒我們要開始寫chuli方法了

function chuli(){      $n=D("login");      $num=$_POST["num"];      $aa=$n->where("num=‘{$num}‘")->count();       $this->ajaxReturn($aa,"eval");}

這樣就可以來判斷這個帳號是不是可以使用了,但是我們會發現有一個小bug,就是如果是空的話,那麼會顯示此帳號可以使用,為了避免出現這樣的失誤,我們可以在js中 判斷一下是不是為空白  if(num.trim()==""){$("#ts").html("帳號不可以為空白")} else{執行ajax部分的內容就可以了}

2 驗證方法:

 首先是判斷不為空白的方法,這裡可以直接用js來寫是非常簡單的,用的是nation表  我在view檔案夾下寫了一個jsdongtai.html的檔案,

<html><head>    <script src="__ROOT__/Public/js/jquery-1.11.2.min.js"></script></head><body>   <div>       代號:<input type="text" id="code"/>       <span id="ts"></span>   </div></body></html>

然後就是判斷代號是否為空白

<script type="text/javascript">   $("#code").blur(function(){     var code=$(this).val();     if(code.trim()=="")      {         $("#ts).html("代號不可為空");      }     else    {       $("#ts").html("驗證通過");    }})</script>

然後用jsdongtai方法調一下就可以了 function jsdongtai(){$this->show();}

如果我們用ajax來調的話可能比較麻煩,但是對於其他的驗證來說要方便的多了,我們可以在方法裡面添加多個驗證

比如我們用一個dongtai.html的模板  和jsdongtai.html的html部分是一樣的,這樣我們就只需要寫ajax部分就可以了   

<script type="text/javascript">  $("#code").blur(function(){     var code=$(this).val();     $.ajax({         url:"__CONTROLLER__/yanzheng",         data:{code:code},//第一個code必須是和表中的一致        type:"POST",        dataType:"TEXT",         success:function(data)           {                if(data.trim()=="1")                   {                       $("#ts").html("驗證通過"),                    }                    else                   {                       $("#ts").html("此處不可為空"),                    }           }})})</script>

 下面是yanzheng方法

function yanzheng(){      $n=D("nation");      $a=array(       array("code","require","此處不可為空"))       if($n->validate($a)->create())         {               $this->ajaxReturn("1","eval");          }         else             {                  $this->ajaxReturn($n->getError(),"eval")              }}

在我們平時做驗證的時候,很少會用ajax,相對來說比較麻煩,我們用簡單的js就可以完成的,比如我做一個關於郵箱的驗證,在jsdongtai.html中加入這一句

<div><input type="text" id="email"/><span id="aa"></span></div>

然後我們開始做郵箱的驗證了,我用的js都是引入的jquery包,前面已經引入過了,這裡就不再詳說了

<script type="text/javascript">$("#email").blur(function(){     var email = $(this).val();     $zz=/^([a-zA-Z0-9_-])[email protected]([a-zA-Z0-9_-])+((\.[a-zA-Z0-9_-]{2,3}){1,2})$/;    if(email.match($zz)==null)   {        $("#aa").html("郵箱格式不正確");           }   else   {         $("#aa").html("郵箱驗證成功");       }})</script>

 

thinkphp 架構中的一部分方法解析

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.