使用AJAX成功执行后执行SQL查询并重定向

时间:2017-10-01 09:29:07

标签: php jquery mysql ajax

我有一个按钮(id =“deleteAccount”)。如果用户点击它,我希望它们被注销并从数据库中删除他们的帐户,然后重定向到该网站的主页。我正在使用SESSION识别用户。

现在,我只能从中删除他们的数据,但不会将其注销并将其重定向到主页。

这是我的 deleteUserAccount.php

<?php session_start();
if(!isset($_SESSION["username"]))
{
        header("Location:blocked.php");
        $_SESSION['url'] = $_SERVER['REQUEST_URI']; 
}
?>

<?php

    $servername = "localhost";
    $username = "root";
    $password = "";
    $dbname = "database";

    $conn = new mysqli($servername, $username, $password, $dbname);

    if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    }

    $user = $_SESSION["username"];

    $deleteSQL = "DELETE FROM `users` WHERE Username='$user'";
    $deleteQuery = $conn->query($deleteSQL);

    if($deleteQuery) {
        unset($_SESSION["username"]);
        unset($_SESSION["password"]);
        header("Location:index.php");
    }
    else {
        echo "error";
    }

?>

这是我的JS文件:

$(document).ready(function() {

    $('#deleteAccount').click(function() {
        $.ajax({
            type: "POST",
            url: 'deleteUserAccount.php'
        });
    });

});

感谢

1 个答案:

答案 0 :(得分:1)

$.ajax({
            type: "POST",
            url: 'deleteUserAccount.php',
            success : function() {
                $(location).attr('href', 'yoursite/index.php')
            }
        });

你正在这里进行ajax调用,你使用php重定向用户,这就是为什么用户不能重定向到主页。您需要在ajax成功回调中使用客户端脚本。