我正在尝试比较输入'传递'通过'传递'来自数据库。如果匹配,则用户将进入注册表。
即使两个密码具有相同的值,我仍然会得到错误的结果,而密码不正确'和通知:未确定的指数:通过。 我正在使用Cakephp 2.8
这是我现在的代码:
public function checkCodeRespondent() {
$password = $this->data['Respondent']['pass'];
if (isset($password) && !empty($password))
{
$respondent = $this->findByPass($password);
debug($respondent);
if ($this->data['Respondent']['pass'] != $respondent['pass']) {
print 'password is not correct';
} else {
print 'password is correct';
}
}
这是从数据库中检索数据的功能
public function findByPass($pass) {
$respondent = $this->Respondent->find('first', array('conditions' => array('pass' => $pass)));
return $respondent;
}
答案 0 :(得分:1)
如果您的密码没有哈希,请尝试:
installedSoftware.AddRange(GetInstalledSoftware(@"SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall"));
installedSoftware.AddRange(GetInstalledSoftware(@"HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall"));
installedSoftware.AddRange(GetInstalledSoftware(@"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall"));
你根本不需要多种功能......
答案 1 :(得分:0)
Undefined index 'pass'
表示数组正在引用尚未设置的Key值,因此尚未设置$this->data['Respondent']['pass']
值或尚未设置$respondent['pass']
。检查两者并查看缺少哪一个,然后退一步找出丢失数据的原因。
<强>调试:强>
print_r($this->data);
输出是什么? print_r($respondent);
输出是什么,这些数组都是你期望的形状?
注意:还因为他们的密码: 这些值中的任何一个都是哈希值吗?如果是这样,他们两个都是哈希?
答案 2 :(得分:0)
我写了一个错字:)
此:
if ($this->data['Respondent']['pass'] != $respondent['pass'])
应该是这样的:
if ($this->data['Respondent']['pass'] != $respondent['Respondent']['pass'])
现在比较就像一个魅力