我有一个漫画网站,我想我的上传图像路径到数据库。管理员登录和上传安全
我有一个登录界面,检查这样正确的凭据:
<?php
$username = isset($_POST['username']) ? $_POST['username'] : "";
$password = isset($_POST['pw']) ? $_POST['pw'] : "";
if($_SERVER['REQUEST_METHOD'] == 'POST') {
if(verify($username, $password) == 1) {
header("Location: ?action=admin");
}
else {
echo "<center>Incorrect credentials</center>";
}
}
function verify($user, $pw) {
include './scripts/dbconnect.php';
$result = $mysqli->query("SELECT username, password FROM users WHERE username='" . $user . "' AND password='" . $pw . "'");
return $result->num_rows;
}
include 'include/footer.php';
?>
然后将它们记录在上传画面。
不幸的是,所有的用户所要做的就是猜出我的网址可能是上传网页,让他们可以跳过我的登录屏幕...
/HTWS /?动作=登录(只需更换“登录”与'管理员',你在那里...)所以,我的第一道防线将不会让我的上传页面名称如此明显......但如果用户仍然猜测它会发生什么......我可以验证另一种方式,不会让他们只是改变了网址?
谢谢!
通常的做法是让登录过程创建会话变量,如果未设置,将导致用户被重定向到登录页面。 – SirDarius
你使用mysqli很棒。但是你仍然很容易注射,因为你只是把输入权倾倒入它。 –
你可能只需使用'.htauth',除非你有十几个管理员。是的,并且http://bobby-tables.com/ – mario