在PHP中验证GET请求

时间:2018-07-28 12:03:49

标签: php jquery authentication

我有一个获取ID并删除用户的PHP文件。像这样:

$user_id = $_GET["id"];
remove_user($user_id); //this function remove user by that id

我使用JQuery将数据发送到此PHP文件。

$.ajax({
    url: "http://example.com/delete-user.php",
    type: "GET",
    dataType: "html",
    data: "id=" + user_id,
    success: function(data) {
        location.reload();
    },
    error: function(error) {
        console.log("Error:");
        console.log(error);
    }
});

但是我知道这有一个安全问题。 如果用户在地址栏中输入此链接:

http://example.com/delete-user.php?id=10

delete-user.php文件执行,该用户(id = 4)将被删除。 我怎么不能防止这种情况? 换句话说,我如何检查发送请求的用户,是否通过表格进行?

1 个答案:

答案 0 :(得分:1)

您可以使用$_SESSION来检查提交id的用户是否已登录,如果已登录,请检查该用户是否具有执行此操作的权限。

但是在不知道您的系统/应用程序如何工作的情况下,我们没有太多信息可以提供给您。