1

私は codeigniter を使用しており、単純なユーザー ログイン設定を行っています。ユーザーは資格情報を送信し、データベースが有効かどうかを確認し、モデルがコントローラーにセッション ID を渡し、ユーザー ページにリダイレクトされる場合に確認します。データが正しくない場合、ユーザーはログイン ページにリダイレクトされ、エラー メッセージが表示されます。ここには派手なものはありません。問題は、IE7 で動作しないことです。リダイレクトが原因なのか、セッションの作成が原因なのかはわかりません。IE 以外のすべてのブラウザで正常に動作します。私はパラレルでWindows 7を使用して8をテストし、正常に動作しました。奇妙なことに、Windows 7 IE7 を搭載した PC では動作しません。ユーザーがログインするたびにログインページが更新され続ける理由を誰か教えてもらえますか? このコードを試して追加するように言われました

$this->load->library('session');
        $this->load->model('login_model');
        $num_rows=$this->login_model->validate();
        if($num_rows == 1)
        {
            $data = array(          
            'is_logged_in' => true,         
            );

            $this->session->set_userdata($data);

            redirect('admin/show_admin_home');
        }
        else
        {
            $data['message']="चुकीचे युझर नेम अथवा पास वर्ड";
            $this->load->view('login',$data);
        }

ログインモデルコード:-

<?php

class Login_model extends CI_Model {



    function validate()
    {
        $username = $this->input->post('username');
        $password = $this->input->post('inputPassword');

        $this->db->select('*');     
        $this->db->where('login_username', $username);
        $this->db->where('login_password', $password);  
        $query = $this->db->get('login');
        return $query->num_rows;
    }
}
?>
4

2 に答える 2

1

リダイレクトにサイトの URL を追加します。

redirect(site_url('admin/show_admin_home'));
于 2013-04-27T07:22:31.240 に答える
0

コンフィグ設定の変更

$config['sess_cookie_name'] = 'cisession'; $config['sess_expiration'] = 84200; $config['sess_expire_on_close'] = FALSE; $config['sess_encrypt_cookie'] = FALSE; $config['sess_use_database'] = FALSE; $config['sess_table_name'] = 'cisessions'; $config['sess_match_ip'] = FALSE; $config['sess_match_useragent'] = FALSE; $config['sess_time_to_update'] = 300;

于 2013-05-24T08:47:54.330 に答える