繁体   English   中英

带有 ajax 的验证表单不能通过 If 语句 go,只能通过 else 语句 go

[英]Validation form with ajax cannot go through the If statement, just only go through else statement

 <?php //session_start(); include_once '../controller/config.php'; /* $user = $_POST['username']; $pass = $_POST['password']; print_r ("User name: ".$user); print_r("\r"); print_r ("Pasword: ".$pass); print_r("\r"); print_r("\r"); print_r("\r"); */ if(isset($_POST['username']) && isset($_POST['password'])) { $user1 = $_POST['username']; $pass1 = $_POST['password']; /* print_r ("User name inside: ".$user); print_r("\r"); print_r ("Pasword inside: ".$pass); print_r("\r"); print_r("\r"); print_r("\r"); */ $queryLogin = "SELECT COUNT(id) as name, password FROM web.account WHERE name=:user AND password=:passWD"; $stmtLogin = $sqlConWeb->prepare($queryLogin); $stmtLogin->bindValue(":user", $user1, PDO::PARAM_STR); $stmtLogin->bindValue(":passWD", md5($pass1), PDO::PARAM_STR); $stmtLogin->execute(); $fetchInfo = $stmtLogin->fetch(PDO::FETCH_ASSOC); $checkInfo = $fetchInfo['name']; /* print_r($fetchInfo); print_r("\r"); print_r("\r"); */ //print_r($checkInfo); //if($user1 == ""){ //} if($user1 == ""){ echo 'user_empty'; }elseif(strlen($user1) <= 4){ echo 'min_user_not_enough'; }elseif($pass1 == ""){ echo 'pass_empty'; }elseif(strlen($pass1) <= 4){ echo 'min_pass_not_enough'; }else{ echo 'success'; } }?>

这个是 javascript 文件,用于客户端验证表单。

 /* This is the js file for validate form code by Vinh Doan */ function LoginForm(){ var userName = jQuery('#username').val(); var passwd = jQuery('#password').val(); var errorMess = ''; /* if(userName == ""){ document.getElementById("username").style.border = "1px solid red"; errorMess = "yes"; }else if(userName.trim().length < 0 ){ jQuery('#error-message').html('* Tên tài khoản không được ít hơn 5 ký tự;'); errorMess = 'yes'. } if(passwd == ""){ document.getElementById("password").style;border = "1px solid red"; errorMess = "yes". }else if(passwd.trim().length < 0 ){ jQuery('#error-message');html('* Mật khẩu không được ít hơn 5 ký tự;'). errorMess = 'yes': } */ if(errorMess == ''){ $.ajax({ url, '/login:html', type: 'post', data: 'username='+userName+'&password='+passwd; success. function (result) { //alert(result); console.log(result); if(result == "user_empty"){ jQuery('#error-message').html('* User name is empty;'). }else if(result == "min_user_not_enough"){ jQuery('#error-message');html('* Username cannot less than 4 characters.'); }else if(result == "pass_empty"){ jQuery('#error-message').html('* Please fill out the password;'); }else if(result == "min_pass_not_enough"){ jQuery('#error-message').html('* Password cannot less than 4 characters!'); }else{ jQuery('#error-message').html('* Your login successful!'); } } }); } }

问题是当我尝试提交按钮时,错误不能 go 进入 If 语句,它进入了 else 语句,虽然我收到的 php 文件中的数据是正确的代码。我不知道为什么不能 Z34D1BZF91FB2E55189A6 进入 If 语句陈述。 我还有一张在下面的控制台中收到代码的图片。

你们能帮我解决问题吗? 十分感谢。

在此处输入图像描述

<?php
//session_start();
include_once '../controller/config.php';


/* $user = $_POST['username'];
$pass = $_POST['password'];

print_r ("User name:    ".$user);
print_r("\r");
print_r ("Pasword:    ".$pass);
print_r("\r");
print_r("\r");
print_r("\r"); */


$pass_data="";

if(isset($_POST['username']) && isset($_POST['password']))
{
    $user1 = $_POST['username'];
    $pass1 = $_POST['password'];
    
    /* print_r ("User name inside:    ".$user);
    print_r("\r");
    print_r ("Pasword inside:    ".$pass);
    print_r("\r");
    print_r("\r");
    print_r("\r"); */
    
    $queryLogin = "SELECT COUNT(id) as name, password FROM web.account WHERE name=:user AND password=:passWD";
    $stmtLogin = $sqlConWeb->prepare($queryLogin);
    $stmtLogin->bindValue(":user", $user1, PDO::PARAM_STR);
    $stmtLogin->bindValue(":passWD", md5($pass1), PDO::PARAM_STR);
    $stmtLogin->execute();
    
    $fetchInfo = $stmtLogin->fetch(PDO::FETCH_ASSOC);
    
    $checkInfo = $fetchInfo['name'];
    
    /* print_r($fetchInfo);
    print_r("\r");
    print_r("\r"); */
    
    //print_r($checkInfo);
    
    //if($user1 == ""){
        
    //}
    
    if($user1 == ""){
        $pass_data='user_empty';
    }elseif(strlen($user1) <= 4){
        $pass_data='min_user_not_enough';
    }elseif($pass1 == ""){
        $pass_data='pass_empty';
    }elseif(strlen($pass1) <= 4){
        $pass_data='min_pass_not_enough';
    }else{
        $pass_data='success';
    }
    
}

return $pass_data;
?>

你的ajax---

if(errorMess == ''){
    
    $.ajax({
        url: '/login.html',
        type: 'post',
        data: 'username='+userName+'&password='+passwd,
        success: function (result) {
            //alert(result);
            
            console.log(result);

            if(result){
            
            if(result == "user_empty"){
                jQuery('#error-message').html('* User name is empty!');
            }else if(result == "min_user_not_enough"){
                jQuery('#error-message').html('* Username cannot less than 4 characters!');
            }else if(result == "pass_empty"){
                jQuery('#error-message').html('* Please fill out the password!');
            }else if(result == "min_pass_not_enough"){
                jQuery('#error-message').html('* Password cannot less than 4 characters!');
            }else{
                jQuery('#error-message').html('* Your login successful!');
            }
         }
            
        }


    });
    
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM