ユーザーがシステムにログインしたときにユーザーIDを保存し、ユーザーをダッシュボードページとダッシュボードにリダイレクトする私たちはユーザIDから値を取得します。このシステムはローカルホストで完璧に動作しますが、ライブサーバでホストすると問題が発生します。Codeigniterセッションがログインページからダッシュボードページにリダイレクトされたときにセッションが値を保存していない
ライブサーバでユーザがログインしたときに、 (セッションの値を表示するとユーザーのIDが表示されますが)値が削除されるダッシュボードにリダイレクトされるとき
ログインページのコードを参照
<?php
class Login extends CI_Controller
{
public function index()
{
$this->load->view('Login_v');
}
public function Login_user()
{
$uname=$_POST['username'];
$pwd=$_POST['password'];
$this->load->model('Login_m');
$data=$this->Login_m->get_user($uname,$pwd);
$this->load->library('session');
if($data!=NULL)
{
$id=$data[0]->sid;
$sdata=array('sid' => $id);
$this->session->set_userdata($sdata);
/* echo '<script type="text/javascript">
window.location = "http://cmsgroupnigdi.com/admission/dashboard"
</script>';*/
echo '<script type="text/javascript">
window.location = "http://localhost/admission/dashboard"
</script>';
exit();
} else {
$data="Invalid Login Details";
$this->load->view('Login_v',['data'=>$data]);
}
}
}
?>
私は
Array ([__ci_last_regenerate] => 1511755625)
セッション/クッキー$の設定、それを印刷するとき、私は
Array ([__ci_last_regenerate] => 1511755625 [sid] => 1)
とダッシュボードページに印刷するとき、これは、ログインページ上の私のセッションの配列である - アプリケーション/設定.php
$config['sess_driver'] = 'files';
$config['sess_cookie_name'] = 'ci_session';
$config['sess_expiration'] = 7200;
$config['sess_save_path'] = NULL;
$config['sess_match_ip'] = FALSE;
$config['sess_time_to_update'] = 300;
$config['sess_regenerate_destroy'] = FALSE;
$config['cookie_prefix'] = '';
$config['cookie_domain'] = '.cmsgroupnigdi.com/admission/';;
$config['cookie_path'] = '/';
$config['cookie_secure'] = FALSE;
$config['cookie_httponly'] = FALSE;
config.phpで '$ config ['cookie_domain']'を確認してください。 – Pratansyah
$ config ['cookie_domain'] \t = ''; –
さて、この答えを見てください。https://stackoverflow.com/a/19024706/2131856 – Pratansyah