根据$ _GET变量编辑/删除?

时间:2016-05-25 12:04:30

标签: php get

我目前正在开发一个系统,如果用户登录并且他们查看由他们创建的页面,他们可以编辑或删除它。页面内容由$_GET变量确定。我计划在对该页面的实际数据做任何事情之前,检查该变量并检查用户是否在后端拥有它。

如果有人更改了网址中的$_GET变量,我的担忧是什么? php如何使用$_GET变量?它们是在页面运行时定义的,还是用户可以在页面上更改一次该变量并修改另一页面的内容?

对此的任何帮助都会很棒。目前我如何设置它不应该做太大的工作,但我只是想确保我不会遇到重大的安全问题。感谢。

1 个答案:

答案 0 :(得分:1)

只需检查GET数组是否已设置并且特定于某个特定内容,或者已经在数组中。

即:

if(isset($_GET['var']) && $_GET['var'] == 'xyz')

在数组示例中:

<?php 
$array= array ('abc','def','ghi');
if (isset($_GET['var'])){
    if (in_array($_GET['var'], $array)) {
        echo "Do something";
    }
    else {
        echo "Do something else";
    }
}
?>

<a href="file.php?var=abc">Click</a> Allowed

如果有人试图修改它file.php?var=abcd,它将转到“做其他事情”,因为它不是数组的一部分。

参考文献: