首頁 > web前端 > js教程 > 主體

AJAX註冊頁面非同步請求的方法實現

php中世界最好的语言
發布: 2018-04-03 13:42:48
原創
1838 人瀏覽過

這次給大家帶來AJAX註冊頁面異步請求的方法實現,AJAX註冊頁面異步請求方法實現的注意事項有哪些,下面就是實戰案例,一起來看一下。

AJAX簡介

(1)AJAX = 非同步 JavaScript 和 XML。

(2)AJAX 是一種用於建立快速動態網頁的技術。

(3)透過在背景與伺服器進行少量資料交換,AJAX 可以使網頁實現非同步更新。這意味著可以在不重新載入整個網頁的情況下,對網頁的某個部分進行更新。

(4)傳統的網頁(不使用 AJAX)如果需要更新內容,則必需會重載整個網站頁面。

 簡單佈局

#JS先判斷,把前端可以的判斷做,減少伺服器的互動

$('button').on('click',function(){;
      var booluser = $('#data input')[0].value.length >= 8;
      var   boolpwd = $('#data input')[1].value.length >= 6 ;
      var boolpwd1 = $('#data input')[1].value == $('#data input')[2].value ;
      var retel =/^(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])\d{8}$/g; 
      var booltel = retel.test($('#data input')[3].value);
      var reemail = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/g ;
      var boolemail = reemail.test($('#data input')[4].value);
      //这里应该嵌套使if的,但是不是实际开发,这么写便于代码观看
      if(!booluser){
        console.log('user:不能少于8位');
      }
      if(!boolpwd){
        console.log('pwd:不能少于6位');
      }
      if(!boolpwd1){
        console.log('pwd1:两次输入密码不一致');
      }
      if(!booltel){
        console.log('tel:请输入正确的电话号');
      }
      if(!boolemail){
        console.log('email:请输入正确的邮箱格式');
      }
登入後複製

利用ajax做非同步請求

if(booluser && boolpwd && boolpwd1 && booltel && boolemail){        
        $.ajax({
          type:"get",
         
          url:"reg.php",
          async:true,
          data:{
            user:$('#data input')[0].value,
            pwd:$('#data input')[1].value,
            tel:$('#data input')[3].value,
            email:$('#data input')[4].value
          },
          success : function(data){
            console.log(data);
          }
        });
      }
      })
登入後複製

在php中接受網路請求傳過來的資料,查看資料庫做出判斷,把結果回饋給前段

<?php
var_dump($_GET);
$user = $_GET[&#39;user&#39;];
$pwd = $_GET[&#39;pwd&#39;];
$tel = $_GET[&#39;tel&#39;];
$email = $_GET[&#39;email&#39;];
$msg = &#39;&#39;;
header(&#39;Content-type:text/html;charset=utf8&#39;);
  $adders = "mysql:host=localhost;dbname=Users;";
  $db = new PDO($adders,"root");
  $db->exec('set names utf8');
  //链接数据库,创建表
  $result = $db->exec('create table if not exists ajaxreg(user varchar(100) 
     primary key,pwd varchar(100),tel varchar(30),email varchar(30)) 
     default charset=utf8');
  $resulttel = $db->query("select tel from ajaxreg ");
  $resulttel->setFetchMode(PDO::FETCH_ASSOC);
  $arr = $resulttel->fetchAll();
 
  foreach($arr as $ar){
    if( $ar['tel'] == $tel){
      $msg = "您输入的手机号已经存在";
     echo $msg;
    //如果手机号已存在,终止整个程序
    die();
    }
  }
     //如果手机号不存在执行下面代码
     $result = $db->exec("insert into ajaxreg values(
     '$user','$pwd','$tel','$email')");
     if($result){
      $msg = "注册成功";
     }else{
     $msg = "用户名已存在";
     }
  echo $msg;
 $db->close();
?>
登入後複製

這樣一個簡單的註冊介面就用AJAX實現了

相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!

推薦閱讀:

ajax實作註冊使用者名稱全套流程

Ajax的循環如何實作

以上是AJAX註冊頁面非同步請求的方法實現的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板