-
- class MY_Controller extends CI_Controller
- {
- public function __construct()
- {
- parent::__construct();
- /* ログインするかどうか、および現在の URL が auth/login であるかどうかを判断します* /
- if ( ! $this->tank_auth->is_logged_in()
- && ( $this->router->fetch_class() != 'auth' && $this->router->fetch_method() != 'ログイン'))
- {
- $redirect = $this->uri->uri_string();
-
- if ( $_SERVER['QUERY_STRING'])
- {
- $redirect .= '?' _SERVER[ 'QUERY_STRING'];
- }
- /*ユーザーのログインページにジャンプ、ログイン後にジャンプするURLを指定*/
- redirect('auth/login?redirect='.$redirect);
- }
- }
- }
- ? >
コードをコピー
ファイル: User.php
-
-
class ユーザーは MY_Controller を拡張します - {
- function login()
- {
if ($this->tank_auth-> is_logged_in()) { // ログイン
- redirect('/');
} else {
- //その他のコードはここに...
- /*リダイレクト情報があるかどうかを判断します */
- $data['redirect'] = isset($_GET['redirect']) ? $_GET['redirect'] : '/';
if ($this-> ;form_validation ->run()) { // 検証OK
- if ($this->tank_auth->login(
- $this->form_validation->set_value('login'),
- $this->gt ;form_validation ->set_value('password'),
- $this->form_validation->set_value('remember'),
- $data['login_by_username'],
- $data['login_by_email'])) { // 成功
- redirect($data['redirect']);
} else {
- //エラー処理
- }
- }
- $this->load->view("login_form ")
- }
- }
- /*
- 注:login_form では、フォームを送信するためのフォーム アドレスが次のとおりであることに注意してください:
- */
- }?>
-
コードをコピーします
login_form で、送信されたフォームのアドレスが次であることに注意してください。
|