就是說,當我點擊提交表單的按鈕時,用ajax來發送請求,然後後台怎麼返回登錄成功或者登錄失敗的信息給前台頁面去展示,整個過程是無刷新的!!求各位大神給點思路! ! !
就是說,當我點擊提交表單的按鈕時,用ajax來發送請求,然後後台怎麼返回登錄成功或者登錄失敗的信息給前台頁面去展示,整個過程是無刷新的!!求各位大神給點思路! ! !
以下是完整參考程式碼,index.php為登入頁面,ajax.php為處理ajax無刷新請求頁面。
index.php
<code><!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>登录</title> <script type="text/javascript" src="http://cdn.bootcss.com/jquery/2.1.4/jquery.min.js"></script> </head> <body> 帐号:<input type="text" id="account" /> <br><br> 密码:<input type="password" id="password" /> <br /> <input type="button" value="登录" id="btnlogin" /> <script type="text/javascript"> $(function(){ $("#btnlogin").click(function(){ $.ajax({ type:"post", url:"ajax.php", data:{account:$("#account").val(),password:$("#password").val()}, dataType:"json", success:function(data){ if(data.type==1){ alert("登录成功"); }else{ alert("登录失败"); } }, error:function(){ alert("请求异常"); } }); }); }); </script> </body> </html></code>
ajax.php
<code><?php header("Content-Type:text/html; charset=utf-8"); $account = $_POST['account']; $password = $_POST['password']; $result = array(); if ($account != '' && $password != '') { //$row = $db->query("SELECT * FROM account where user = '".$account."' and password = '".$password."'"); $row = true;//这里去查数据库,假设这里返回true if($row){ $result['type'] = 1; $result['msg'] = '登录成功'; }else{ $result['type'] = 0; $result['msg'] = '用户名或密码不正确'; } } else { $result['type'] = 0; $result['msg'] = '参数传输不正确'; } echo json_encode($result); ?></code>
直接往response裡寫就行,ajax接受資料之後在回呼函數裡修改頁面。怎麼寫要跟前端統一格式,一般是往response裡寫個json資料
一般來說,當你通過ajax提交信息到後台php後,在php判斷處理完成後,會返回一個json,然後前端的成功回調函數接受判斷就好,現在手機不好給代碼
<code>header('content-type:application/json; charset=utf-8'); exit(json_encode($yourdata));</code>