【发布时间】:2020-05-24 11:04:55
【问题描述】:
告诉我如何配置授权。 PHP 我基本知道,因为我不使用它,但我需要实现这个任务。我希望当点击按钮授权通过并转到另一个页面时。 我不完全了解如何检查数据库中的数据并将其与用户数据进行比较,如果有巧合,请重定向到另一个页面。 你走对路了吗?我该如何解决我的问题?
authdb.php
<?php
$dbname = "dictdb";
$username = "root";
$userpass = "";
$charset = "utf8";
$options = [PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION];
$userdata = [
"logVal" => trim($_POST["logVal"]),
"passVal" => trim($_POST["passVal"])
];
$db = new PDO("mysql:host=$dbhost;dbname = $dbname;charset=$charset", $username, $userpass, $options);
if (!empty(trim($_POST["logVal"])) && !empty(trim($_POST["passVal"]))) {
$query = "SELECT * FROM `dictdb`.`user` WHERE `login` = :logVal AND `password` = :passVal";
$user_data = $query-fetchAll();
if ($user_data[password] == :passVal) {
echo "ok";
};
?>
auth.php
$(document).ready(function () {
$("button.btn-auth").on("click", function () {
$.ajax({
url: '/src/php/auth.php',
type: "POST",
});
});
});
【问题讨论】:
-
切勿以明文形式或使用 MD5/SHA1 存储密码! 仅存储使用 PHP 的
password_hash()创建的密码哈希,然后您可以使用password_verify()进行验证。看看这个帖子:How to use password_hash 并了解更多关于bcrypt & password hashing in PHP
标签: javascript php database