ホームページ  >  記事  >  バックエンド開発  >  $_session で保存すると IE では文字化けしてしまうのに、FF や Chrome では正常に保存されるのはなぜですか?

$_session で保存すると IE では文字化けしてしまうのに、FF や Chrome では正常に保存されるのはなぜですか?

WBOY
WBOYオリジナル
2016-06-13 13:08:021040ブラウズ

$_session IE で保存すると中国語が文字化けするのですが、FF と Chrome では正常に表示されるのはなぜですか?
数日前にヘルプのメッセージを投稿しましたが、役に立ちませんでした (IE では画像が表示できないという問題があり、ただし、FF と Chrome では正常です)
自分で試してみて echo $_SESSION["goodsid"]、

ff の下に表示されるセッションが Yuan002@元003@元004@ であり、漢字が表示されることがわかりました通常、
の下に表示されるセッションは ?002@?003@?004 @ で、数字の前の漢字が枠として表示されます。
内の漢字の格納に問題があると思われます。
私のファイルはすべて utf-8 形式で保存されています。
セッション ファイルは

PHP コード
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
session_start();
header ( "Content-type: text/html; charset=utf-8" );
if($_SESSION["goodsid"]==""){
    $_SESSION["goodsid"]=$_GET["id"]."@";
}else{
    $array=explode("@",$_SESSION["goodsid"]);
    if(in_array($_GET["id"],$array)){
        $key=array_search($_GET["id"],$array);
        $array[$key]="";
        $_SESSION["goodsid"]=implode("@",$array);
        }else{
        $_SESSION["goodsid"].=$_GET["id"]."@";
        }
}



すみません、どこで間違ったのですか?? ?

------解決策---------- ----------

ブラウザのエンコード形式を自動的に選択するのではなく、手動で設定しますか?
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。