这种情况下的问题是什么?为什么我得到0而不是1?如果我从phpMyAdmin运行查询它工作正常。
if ($stmt = $mysqli->prepare("SELECT * FROM members WHERE username=? AND password=?")){
$input['hold'] = md5($input['pass'] . $config['salt']);
$stmt->bind_param("ss", $input['user'], $input['hold']);
$stmt->store_result();
$stmt->execute();
if ($stmt->num_rows > 0){
// Set session variables
$_SESSION['username'] = $input['user'];
header("Location: members.php"); // Redirect if we have results }
答案 0 :(得分:0)
我没有解决方案,但有一些意见对评论来说有点大。
您向我们展示的代码将在结果为空时设置会话,或者在行数为零时失败。没有错误检查以查看代码是否按预期执行。
您应该检查错误。还可以尝试使用硬编码的SQL语句运行它,您已使用PHPMyAdmin的mysql命令行客户端对其进行了测试和验证。