【发布时间】:2013-12-19 09:23:41
【问题描述】:
我已经编写了我的 PDO 身份验证,但它还没有完成,我已经到了这一步并对其进行了测试,我已经对其进行了调试,但在这里没有成功找到问题。
此代码应返回无效数据,除非在这种情况下它不会进入空白页。
<?php
error_reporting(E_ALL);
require('.class/class_pdo.php');
$query = $db->prepare('SELECT player_login_name, player_login_pass FROM members
WHERE player_login_name = :name AND player_login_pass = :pass');
$db->connect;
$query->bindParam(':name', $name, PDO::PARAM_STR);
$query->bindParam(':pass', $pass, PDO::PARAM_STR);
$name = (isset($_POST['name']) && !empty($_POST['name'])) ? htmlspecialchars($_POST['name']) : '';
$pass = (isset($_POST['pass']) && !empty($_POST['pass'])) ? password_verify($_POST['pass']) : '';
if($query->fetchColumn() == 0) {
echo "Invalid data";
} else {
header("location:'welcome.php'");
}
$query->execute();
?>
任何想法都很好,谢谢?
【问题讨论】:
-
似乎一个离题的非真实问题可能只是无尽的代表点来源。每个参与者都可以获取一行随机构建的代码,修复它,并获得应得的奖励。利润!
-
那你为什么不投票关闭它或自己回答,@YourCommonSense,而不是抨击那些花时间回答的人。
-
@MartinBean 因为 Stack Overflow 是一场赌博,每个人都只有在获得代表点数之后才会参与其中。意味着这个问题永远不会被关闭(因为关闭没有奖励)。
-
@YourCommonSense 以身作则。如果您认为这个问题不符合 Stack Overflow 的标准,请点击上方的“关闭”链接。
-
你被重定向到
welcome.php吗?
标签: php authentication pdo