Javascript 使用AJAX将数据发布到PHP

Javascript 使用AJAX将数据发布到PHP,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我正在尝试使用AJAX测试PHP post数据。从页面测试中,我想发布到同一页面,并检查PHP是否接收到post数据,是否发布了数据,以查看重定向是否成功,这样我就可以在页面重定向之前编写身份验证代码并分配会话 当我点击登录按钮时,我只是检查ISSETPOST数据,如果数据存在,则重定向。我不知道这为什么不起作用。感谢您的帮助 <script> $(document).ready(function(){ $('#login').click(function()

我正在尝试使用AJAX测试PHP post数据。从页面测试中,我想发布到同一页面,并检查PHP是否接收到post数据,是否发布了数据,以查看重定向是否成功,这样我就可以在页面重定向之前编写身份验证代码并分配会话

当我点击登录按钮时,我只是检查ISSETPOST数据,如果数据存在,则重定向。我不知道这为什么不起作用。感谢您的帮助

<script>
    $(document).ready(function(){
        $('#login').click(function(){
            $.ajax({
                type: 'POST',
                url: 'http://domain.com/backend/test',
                data: { username: "John", password: "Boston" }
            });
            return false;
        });
    });
</script>

<?php
if(isset($_POST['username']) && isset($_POST['password'])) {
    redirectto("http://domain.com/backend/test2");
    // redirecto is a function equivalent to header location
}
?>

<form autocomplete="off" class="ui fluid form segment" method="post">
    <div class="ui fluid form segment">
        <div class="two fields">
            <div class="field">
                <label>Email/Username</label>
                <input placeholder="Email/Username" name="username" id="username" type="text">
            </div>
            <div class="field">
                <label>Password</label>
                <input placeholder="Password" name="password" id="password" type="password">
            </div>
        </div>
        <input type="submit" class="ui fluid submit button" name="dosubmit" value="Submit" id="login" />
    </div>
</form>

$(文档).ready(函数(){
$('#login')。单击(函数(){
$.ajax({
键入:“POST”,
网址:'http://domain.com/backend/test',
数据:{用户名:“约翰”,密码:“波士顿”}
});
返回false;
});
});
电子邮件/用户名
暗语
更改

<input type="submit" class="ui fluid submit button" name="dosubmit" value="Submit" id="login" />



即使您触发了
#login
按钮的点击事件,它也是一种提交类型,它将首先触发提交事件。更改按钮类型应该会有所帮助。

在JS中,使用submit而不是click事件。 我是说,而不是

$('#login').click(function(){
使用

此外,您还可以向表单中添加操作属性:

<form autocomplete="off" class="ui fluid form segment" method="post" action="#">


运气不好,
return false
会做几乎相同的工作。@lock它可能无法解决您的问题,但他是对的。在你的代码中没有任何信息,嗨,发生了什么,你有什么错误?检查jquery是否可以工作?仅供参考,请检查jquery文件是否正确包含
$('#login').submit(function(){
<form autocomplete="off" class="ui fluid form segment" method="post" action="#">