- 締切済み
session_start()の際のCannot send session cache limiterエラーについて
現在、SJISだったサイトをUTF-8に変換する作業をしております。 今まで起こらなかったエラーなのですが、検索エンジンで、フォーム(index.php)に入力して送信した結果がsearch.phpに出るプログラムです。search.phpに下記のようなエラーが表示されるようになりました。 Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/homepage/public_html/search/search.php:1) in /home/homepage/public_html/search/search.php on line 2 session_start()関数はもちろん<html>ヘッダーより前、プログラムの一番上に下記のように書いております。 <? session_start(); ?> <html> 他のページは問題無いのですが、今の所この検索プログラムの結果画面でのみ起こります。また、SJISで書いていた時はこのようなエラーは起こりませんでした。 恐らくUTF-8に変換した点がポイントだと思いますが、解決策が見つからずこちらに質問させていただきました。 よろしくお願いいたします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- SAY_MAN
- ベストアンサー率41% (14/34)
回答No.1
こんにちわ <? ob_start(); session_start(); ?> としてみてはどうでしょうか?
お礼
アドバイスありがとうございました。ob_start();を先頭に付加しても同じ結果になってしまいました。最終的に、文字コードをBOMありのUTF-8で変換していたので、これをBOM無しのUTF-8Nにしたところ問題が解決されました。とりあえず、今回はこの処理で対応して様子をみたいと思います。