php セッション エラーの解決策: 1. "session_start();" の前の出力を削除します; 2. 設定ファイルを呼び出すときに "include_once()" を使用し、繰り返しの呼び出しエラーを回避します。
この記事の動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューター
具体的な質問:
ログインに成功した後、次のようにユーザーのセッションを記録します。
$account=$_POST['account']; //获取表单传递的用户名如果用户名和密码正确,则:session_start();session_register("account");运行了以后,发现报错如下:Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at D:\AppServ\www\myweb\conn.php:2) in D:\AppServ\www\myweb\loginsave.php on line 16Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at D:\AppServ\www\myweb\conn.php:2) in D:\AppServ\www\myweb\loginsave.php on line 16Fatal error: Call to undefined function session_register() in D:\AppServ\www\myweb\loginsave.php on line 17
いわゆる行 16 と 17 は、上の 2 行です: session_start();session_register("アカウント"); 昨日実行しました。まだ正常ですが、なぜ今問題が発生しているのですか? 。 。 。この使い方に何か問題はありますか?どうやって対処すればいいのでしょうか?
解決策:
1. session_start(); の前に出力があってはなりません。通常、セッションの開始は最初の行に配置されます。
2. セッションが開かれているかどうかは conn.php ファイルで確認できます。通常、セッションは設定ファイルの 1 行目で開かれます。設定ファイルを呼び出すときに include_once() を使用して、繰り返される通話エラーを回避します。
[推奨学習: 「PHP ビデオ チュートリアル 」]
以上がPHPセッションエラーの問題を解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。