如何正確的使用thinkphp 框架?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
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_-])+@([a-zA-Z0-9_-])+((\.[a-zA-Z0-9_-]{2,3}){1,2})$/;
if(email.match($zz)==null)
{
$("#aa").html("郵箱格式不正確");
}
else
{
$("#aa").html("郵箱驗證成功");
}
})
</script>看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。