假设我想为单个用户制作一个超级简单的页面,在 php 中限制访问。假设授权用户知道页面的目录和 url,他是否可以通过get
url 栏中的方法手动传递用户名和密码(他会知道),并根据脚本自动检查,其中的值的用户名和密码将被硬编码?该脚本有一个if statement
如果不是真的,就不会显示内容。可能有什么缺陷?
网址
http://example.com/admin.php?user=admin&password=1324
管理员.php
<?php if($_GET['user'] == 'admin' && $_GET['password'] == '1324')){
// display content here
}else{
echo "You're not authorized to visit this page";
} ?>
场景二:post
方法
与上述场景类似,在这种情况下,授权用户将在表单中键入用户名、密码,这些表单将在实际admin.php
文件中进行处理。将使用类似if statement
的方法,$_POST[]
这次使用超全局变量来检查输入。
<?php if($_POST['user'] == 'admin' && $_POST['password'] == '1324'){
// display content here
}else{
echo "You're not authorized to visit this page";
} ?>