コードイグナイターに慣れるために、基本的なログインを作成しようとしていますが、エラーチェックなどはまだありません。以下は、ユーザー名とパスワードを確認するために、モデル メソッドからの結果を戻そうとするコントローラー クラス メソッドです。
public function login()
{
if (isset($_POST['email'])) {
$this->cdata['email'] = $_POST['email'] ;
} else {
$this->cdata['email'] = "";
}
if (isset($_POST['password'])) {
$this->cdata['password'] = $_POST['password'];
} else {
$this->cdata['password'] = "";
}
$this->load->model("dbaccess");
$this->loggedin = $this->dbaccess->check_input($this->cdata['email'], $this->cdata['password']);
if($this->loggedin == TRUE) {
$this->load->view('carerview', $this->cdata);
} else {
$this->cdata['warning'] = "Check failed ! Please try again";
$this->load->view('mainview', $this->cdata);
}
}
私の見解からの投稿はうまく機能しているようです。ポストはメインのログイン/インデックスに送り返され、以下のログイン メソッド (上図) に、コントローラのログイン メソッドで呼び出されるモデル クラスが表示されます。これまでのところメソッドは 1 つしかありません。check_input()
class Dbaccess extends CI_Model
{
function __construct()
{
parent::__construct();
}
function check_input($email, $password)
{
$this->db->select('email');
$this->db->from('tablename');
$this->db->where('email', $email);
$this->db->where('password', $password);
$query = $this->db->get();
if ($query->num_rows() > 0) {
return TRUE;
} else {
return FALSE;
}
}
}
インデックス ページで [送信] をクリックすると、何があっても警告が表示され続け、問題がどこにあるのかわかりません。