2015-12-30 6 views
13

私は何年も前からPHP 5.xxで作業していましたが、最近PHP 7に更新しました。セッションを作成できません。PHP 7のセッション

私はドキュメントを読んでいます。

は以前のPHPでは、あなただけしなければならない。

session_start(); 

がセッションを開始するが、これはPHP 7では動作しませんし、私のページの読み込みを続けます。私はPHPのウェブサイトにも書かれているようにパラメータに配列を渡しましたが、それでもページをロードし続けます。

私はこれ試してみました:

session_start([ 
'cache_limiter' => 'private', 
'read_and_close' => true, 
]); 

をしかし、私のブラウザが読み込みが終了しないと、数秒後には

Apacheの再起動エラー 'このWebページは利用できません' が表示さ:

[水AH00455:Apache/2.4.18(Win32)OpenSSL/1.0.2e PHP/7.0.0が設定されました。通常の操作を再開します。

年代:45:16.470001 2015] [mpm_winnt:通知] [pid 2384:tid 376]

[水曜日12月30日00:45:16.470001 2015] [mpm_winntで:予告] [PID 2384:TID 376] AH00456:ApacheのラウンジVC14サーバーが構築された:2015年12月9日午前10時17分39秒

[水曜日12月30日00:45:16.470001 2015] [core:notice] [pid 2384:tid 376] AH00094:コマンドライン: 'c:\ xampp \ apache \ bin \ httpd.exe -d C:/ xampp/apache'

[Wed Dec 30 00:45:16.470001 2015] [mpm_winnt:通知] [pid 2384:tid 376] AH00418:親:作成された子プロセス1716

[Wed Dec 30 00:45:17.172064 2015] [ssl:warn ] [pid 1716:tid 384] AH01909:www.example.com:443:0サーバー証明書にサーバー名と一致するIDが含まれていません

[Wed Dec 30 00:45:17.343941 2015] [ssl:警告] [pid 1716:tid 384] AH01909:www.example.com:443:0サーバー証明書にサーバー名と一致するIDは含まれません。

[Wed Dec 30 00:45:17.375192 2015] [mpm_winnt:notice] [pid 1716:tid 384] AH00354:子:150ワーカースレッドを開始しています。

+0

興味深い。スクリーン/エラーログにエラーが表示されましたか? – Raptor

+0

私のタブは読み込みを続けてから、数秒後に「このウェブページは利用できません」と表示されます。 – Waleed

+0

「error.log」のログはありませんか? *あなたがApacheを使っていると仮定します*遅い 'session_start()'のほとんどのケースは、指定されたセッションディレクトリにセッションファイルを作成できなかったためです。設定をチェックしてセッションディレクトリを探し、アクセス権があることを確認してください。 – Raptor

答えて

-3

私は、ユーザが時間に異なるブラウザに記録されたときに異なるセッションを割り当てるために....セッションの

$sss = $this->Loginmodel->validation(); 
$this->load->library('session'); 


if ($this->form_validation->run() == FALSE) { 

    $this->load->view('navbar'); 
    $this->load->view('login'); 
    $this->load->view('footer'); 
} else if ($sss) {//if user is valid get session data to an array 
    foreach ($sss as $row) { 
     $sess_array = array(
      'type' => $row->type, 
      'name' => $row->name, 
      'email' => $row->email, 
      'user' => $row->name, 
      'music' => array(), 
      'ptype' => $row->type, 
      'id' => $row->id 
     ); 
     //set user as loged in 
     $this->session->set_userdata('logged_in', $sess_array); 
    } 

    $data = array(); 
    $session_data = $this->session->userdata('logged_in'); 
    $data['name'] = $session_data['name']; 
    $data['email'] = $session_data['email'];    
    $data['type'] = $session_data['type']; 

を使用しています。この前

あなたはコードイグナイタフレームワークに

$autoload['libraries'] = array('javascript', 'database', 'form_validation', 'session'); 
+0

これはどのように関連していますか? – Michael

3

を使用している場合は、自動ロード設定ファイルを編集することを確認してください私は、すなわちx86 or x64ビットXAMPPのバージョンに関連し、そのバグを発見しました。 私はx64ビットのウィンドウを持つシステムを持っていて、私はとphp7をインストールしましたが、それはx86ビットでした。これがエラーapache crashesの原因でした。

今私は別々にapach2.4 (x64)PHP7.0.1が完璧に動作しています。