我在我的db中有大约10行,其中3个状态==为'Pass'。我在下面的代码中注意到的问题是foreach循环。它不想正常工作。我甚至无法让脚本将jSON数据发送回浏览器,这意味着脚本不会通过foreach语句处理。有人知道如何解决这个问题吗?Codeigniter没有正确地处理一个foreach循环
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}'");
foreach ($query->result() as $row) {
if ($row->status == "Pass") {
if ($query->num_rows() > 0) {
$this->session->set_userdata('logged', "1");
$this->session->set_userdata("username", "{$postedUser}");
echo json_encode(array('session_state' => true));
} else {
echo json_encode(array('session_state' => false));
}
} elseif ($row->status == "Fail" || "Pending") {
exit;
}
}
}
你确定你的查询返回任何结果? – Hersha 2012-02-10 15:47:37
现在没有它没有返回任何东西。 – 2012-02-10 15:49:27