在做注冊頁面時會用到jquery驗證注冊信息,用戶名,密碼,郵箱,手機號的驗證,比較簡單的,新手莫怪...
<script>
function Name(){
var name = $("#name").val();
if(name=="") {
$("#tip1").html("<div style='color:#2ca9cc;font-size:14px;'>請輸入用戶名</div>");
}
}
function checkName(){
var name = $("#name").val();
if(name==""){
$("#tip1").html("<div style='color:red;font-size:14px;'>用戶名不能為空</div>");
}else{
$("#tip1").html("");
}
}
function Password(){
var name = $("#password").val();
if(name=="") {
$("#tip2").html("<div style='color:#2ca9cc;font-size:14px;'>請輸入密碼</div>");
}
}
function checkPassword(){
var name = $("#password").val();
if(name==""){
$("#tip2").html("<div style='color:red;font-size:14px;'>密碼不能為空</div>");
}else{
$("#tip2").html("");
}
}
function Email(){
var name = $("#email").val();
if(name=="") {
$("#tip3").html("<div style='color:#2ca9cc;font-size:14px;'>請輸入郵箱</div>");
}
}
function checkEmail(){
var name = $("#email").val();
var zheng =/^[\w\.]+@[\w\.]+(\.\w+)+$/;
if(!zheng.test(name)){
$("#tip3").html("<div style='color:red;font-size:14px;'>郵箱格式錯誤</div>");
}else{
$("#tip3").html("");
}
}
function Phone(){
var name=$("#phone").val().length;
if( name ==0) {
$("#tip4").html("<div style='color:#2ca9cc;font-size:14px;'>請輸入手機號</div>");
}
}
function checkPhone(){
var name=$("#phone").val().length;
if(name!==11) {
$("#tip4").html("<div style='color:red;font-size:14px;'>手機號位數不正確</div>");
}else{
$("#tip4").html("");
}
}
function check(){
$.ajax({
url: "./checkajax.php",
type: "post",
data:$('form').serialize(),
success: function (response) {
if (response == 1) {
$("#tip").html("用戶名不能為空");
} else if (response == 2) {
$("#tip").html("密碼不能為空");
} else if (response == 3) {
$("#tip").html("注冊成功");
} else {
$("#tip").html("注冊失敗");
}
}
});
}
</script>
ajax提交數據到php文件進行判斷
<?php $pdo = new PDO("mysql:host=localhost;dbname=project", "root",""); //對收集到數據進行驗證 if($_POST){ //判斷用戶是否進行了數據提交 $username = isset($_POST["username"])?$_POST["username"]:''; if($username==""){ echo 1; //response值為1 表示用戶名為空 exit; } $password = isset($_POST["password"])?$_POST["password"]:''; if($password==""){ echo 2; //response值為2 表示密碼為空 exit; } $email = isset($_POST["email"])?$_POST["email"]:''; $phone = isset($_POST["phone"])?$_POST["phone"]:''; //將數據放入到數據庫 $query = "insert into user (username,password,email,phone) values (:username,:password,:email,:phone)"; //PDO通知mysql做准備 $statm = $pdo->prepare($query); //綁定參數 $statm->bindParam(":username",$username); $statm->bindParam(":password",$password); $statm->bindParam(":email",$email); $statm->bindParam(":phone",$phone); //PDOStatement通知mysql執行 $statm->execute(); //根據被影響行數,判斷執行是否成功 if($statm->rowCount()>0){ //執行成功 echo 3; }else{ echo 4;//執行失敗 } }
這樣就完成了注冊驗證。。。。
需要注意的是:
在給PHP文件傳值的時候用到的 $.('form').serialize(),這個是方法的作用是獲取表單內所有的值;
之前我以為PHP文件中用的是POST,不用傳遞值就可以,但事實上是不行的。
自己的一點小經驗
