我需要第二双眼睛。我无法弄清楚为什么这个功能正常工作:
function get_password($db, $id) {
try {
$sql = $db->prepare('SELECT password FROM employee
WHERE employee.emp_id = ?');
$sql->bindParam(1, $id);
$sql->execute();
$password = $sql->fetchColumn();
} catch(Exception $e) {
echo $e->getMessage();
die();
}
return $password;
}
并且此函数在fetchColumn()上失败:
function get_name($db, $email) {
try {
$sql = $db->prepare('SELECT login
FROM employee
WHERE email = ?');
$sql->bindParam(1, $email);
$sql->execute();
$user_name = $sql->fetchColumn(0);
} catch(Exception $e) {
echo $e->getMessage();
die();
}
return $user_name;
}
我已经验证了以下内容:
我还尝试过只使用fetchColumn(),fetchAll和其他获取尝试。
我也试过在SELECT中重写这个:
'SELECT employee.login FROM employee WHERE employee.email = ?'
但结果是一样的。
这里有一些概念吗?关于如何调试这个的任何其他想法?