并不是PHP新手,但只有PDO一天的时间。当然,我在这里做错了什么。PDO读取/读取所有
$query = $conn->prepare("SELECT * FROM admins WHERE username = :username AND password = :password");
$query->execute(array('username' => $username,'password' => sha1($password)));
$result = $query->fetchAll(PDO::FETCH_ASSOC);
if (count($result) > 0)
{
$_SESSION['user']['who'] = $result[0]['who'];
$_SESSION['user']['email'] = $result[0]['email'];
$_SESSION['user']['username'] = $result[0]['username'];
echo REFRESH;
}
else
{
$message = "Invalid username/password.";
}
我可以声明那些$_SESSIONS
正常的唯一方法是,如果我使用$result[0]['fieldName'];
如何我刚刚通过$result['fieldName'];
访问它?
好的,那么**适当的**测试用例会是什么情况呢,因为如果我只用'fetch',它不会返回任何东西?首先想到的是'(!empty($ result))? // log in:// invalid' – Ronnie
如果没有行,'fetch'将返回一个虚假值。你也可以检查'rowCount'。 'if($ query-> rowCount)'或'if(!$ row = $ result-> fetch())'将会执行。 –
优秀...谢谢!使用获取作品 – Ronnie