CodeIgniter if.else语句未正确执行


CodeIgniter if...else statement not properly executing

($row->status == "Pass")应该等于true,但对某些人来说不是。我猜我有代码错误。有人知道我做错了什么吗?

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));
                }
            }
        }

从注释中复制,这样Henes就不会一直出现未回答的问题:)


它是区分大小写的——它在两个地方都肯定"通过"吗?这个问题几乎肯定是一个简单的问题,所以重新检查一下你的基础知识。