php json javascript
//データベースに接続します コード
$conn=mysql_connect("127.0.0.1","root","root") または die("データベースへの接続に失敗しました!")
mysql_select_db( "resume2",$ conn) または die("そのようなデータベースはありません!");
mysql_query("SET NAMES utf8")
// 配列をデータベースに保存します
$value=array("name"=>) $_POST['ジョブ名 ']);
$var=json_encode($value);
mysql_query("INSERT INTO `resume`(`job_id`, `job_pass_status`,job_content`)VALUES(NULL,1,'$var' )",$conn );
//データベースから保存したばかりのデータを読み取ります
$query=mysql_query("SELECT * FROM `resume` WHERE `job_id`=10"); // 保存したばかりの ID は 10 です
$ row=mysql_fetch_array($query);
$num=json_decode($row['job_content'],true);
echo $num['name']
//job_name が「Zhang Xiaobai」の場合"、出力 $num['name'] は "u6234u660eu534e" です。何が間違っているのか教えてください。出力が「Zhang Xiaobai's name」ではないのはなぜですか?
ディスカッションに返信 (解決策)
json は utf-8 でエンコードされた文字のみを受け入れます。ページが utf-8 でエンコードされていることを確認してください。
json は UTF-8 でエンコードされた文字のみを受け入れます。ページが UTF-8 でエンコードされていることを確認してください。
プロジェクトや HTML ファイルを作成するときは、json_encode を使用してトランスコードしてデータベースに保存しますが、データベースでは
という形式になります。 「u6234u660eu534e」。データベースを読むと、「u6234u660eu534e」しか読めません。これを「Zhang Xiaobai」のような中国語のエンコードに変換する方法がわかりません。
echo $_POST['job_name']; // 普通ですか?
普通ですか?
なぜ「張暁白」なのでしょうか?
$s = '"u6234u660eu534e"';
echo json_decode($s); //Dai Minghua
echo json_encode('Zhang Xiaobai') //"u5f20u5c0fu767d"
を記述していないことがわかります。あなたの問題を正確に
問題は解決されました。 mysqlに問題があります