使用jQuery,PHP Ajax响应为空

时间:2015-05-30 21:22:56

标签: javascript php jquery ajax

目前我创建了一个注册页面“页面”。这是表单的html代码

<form class="register_form" method="POST" action="insert.php">
  <label class="label_register">Benutzername*:</label>
  <div class="input_group">
	<input class="input_register" id="register_username" name="username" type="text"/><span class="register_span">-</span>
  </div>
  <label class="label_register">Passwort*:</label>
  <div class="input_group">
	<input class="input_register" id="register_password_1" name="password" type="password"/><span class="register_span">-</span>
  </div>
  <label class="label_register">Passwort wdh.*:</label>
  <div class="input_group"> 
	<input class="input_register" id="register_password_2" name="password2" type="password"/><span class="register_span">-</span>
  </div>
  <label class="label_register">E-Mail Adresse*:</label>
  <div class="input_group">
	<input class="input_register" id="register_email" name="email" type="text"/><span class="register_span">-</span>
  </div>
  
  <button class="button button_register">Jetzt kostenlos registrieren</button>
  <p class="register_hint">
	 * Pflichtfeld
  </p>
</form>

这是我的jquery代码

var username_bool = true;
var password_bool = true;
var email_bool = true;
$('.register_form').on('submit', function(){
    if(username_bool == true && password_bool == true && email_bool == true){

        $.ajax({
            type: "POST",
            url: "insert.php",
            data: $(this).serialize(),
            success: function(response){
                console.log(response);
                alert(response);
            },
        });
    }
    else{
        alert("---");
    }
    return false;
});

这是php代码

<?php
if(isset($_POST["username"]) && isset($_POST["password_1"]) && isset($_POST["email"])){
    echo "response";
}

&GT;

现在我发送了表单,但是响应是空的。我使用Firebug进行调试。我的错是什么?我也犯了其他错误?

谢谢你的帮助。

2 个答案:

答案 0 :(得分:2)

您似乎正在检查名为password_1的字段

isset($_POST["password_1"])

虽然它的名字为password

<input class="input_register" id="register_password_1" name="password" type="password"/><span class="register_span">-</span>

您必须确保name属性与您正在检查的值相匹配

答案 1 :(得分:2)

我看到的问题是您检查isset($_POST["password_1"]),而且您在密码字段“password”中命名时不在表单中

<input class="input_register" id="register_password_1" name="password" type="password"/><span class="register_span">-</span>

您需要使用isset($_POST["password"])

进行检查