jQuery $ .ajax发布后从PHP页面重定向

时间:2019-03-19 21:05:28

标签: php ajax

我正在使用$ .ajax将数据提交到PHP页面,并且我知道返回成功响应时可以进行重定向。但是,是否有一种方法可以从我发布到的PHP页面执行重定向?

2 个答案:

答案 0 :(得分:2)

PHP

如果要使用PHP方式,可以设置标题。

  header('Location:www.example.com');
 

警告,如果您没有向客户端发送任何其他信息,则只能使用标头。

  

请记住必须在任何实际输出之前调用header()   通过常规HTML标记,文件中的空白行或通过PHP发送。   读取包含或要求的代码是一个非常常见的错误   函数或其他文件访问函数,并且有空格或空   在header()调用之前输出的行。同样的问题   使用单个PHP / HTML文件时存在。

Javascript

您可以使用以下方法重定向浏览器:

  window.location =“ www.example.com”;
 

这可以随时完成。

来源: PHP头 JS窗口位置

答案 1 :(得分:1)

这就是您想要的。下面的代码通过 ajax 将数据发布到服务器php后端,如果发布的数据不是,则将用户重定向 空

function CheckAndSetupContractHitman($player_data_tab,$player_defence_data_tab,$bonus_exp)

test.php

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script type="text/javascript">

    $(document).ready(function(){


        $('#signin').click(function(){


    var username = $('#username').val();
    var password = $('#password').val();

            if(username==""){

                alert('please Enter username');


            }

     else if(password==""){

                alert('please Enter password');


            }

    else{

    $('#loader').fadeIn(400).html('<span>Please Wait, User is being logged</span>');

    var datasend = "username="+ username + "&password=" + password;

            $.ajax({

                type:'POST',
                url:'login.php',
                data:datasend,
                            crossDomain: true,
                cache:false,
                success:function(msg){

                    //empty username and password box after submission
                    $('#username').val('');
                    $('#password').val('');

                    $('#loader').hide();
                    $('#result').fadeIn('slow').prepend(msg);
                    $('#fadeoutResult').delay(5000).fadeOut('slow');

                }

            });

            }

        })

    });


    </script>





            <input
                name="username"
                type="text"
                class="form-control input-lg"
                id="username"
            />

            <input
                name="password"
                type="password"
                class="form-control input-lg"
                id="password"
            />


<div id="loader"></div>
<div id="result"></div>


            <button type="submit" id="signin">
                Submit
            </button>