0
($row->status == "Pass")
должен быть равен true, но для некоторых это не так. Я предполагаю, что у меня ошибка кода. Кто-нибудь знает, что я делаю неправильно?CodeIgniter if ... else statement не правильно выполняет
public function logsig() {
header('Content-type:application/json');
$postedUser = $this->input->post('username');
$password = $this->input->post('password');
$hashedPass = $this->encrypt->sha1($password);
$query = $this->db->query("SELECT * FROM users WHERE username = '{$postedUser}' AND password = '{$hashedPass}'");
if ($query->num_rows() > 0) {
$row = $query->row();
if ($row->status == "Pass") {
$this->session->set_userdata('logged', "1");
$this->session->set_userdata("username", "{$postedUser}");
echo json_encode(array('session_state' => true));
} elseif ($row->status == "Fail" || $row->status == "Pending") {
echo json_encode(array('session_state' => false));
}
}
}
Каково значение '$ row-> status'? – Joe
Строка, которую я вызываю, имеет «проход». Но у меня есть другие строки с другими значениями, такими как «ожидающий» и «одобренный». Я собираюсь избавиться от таблицы строк, которые имеют значения статуса, отличные от «Pass», и посмотреть, что он делает. –
Хм, это сработало, так что это значит? Что случилось? –