gpt4 book ai didi

javascript - 将 UTF-8 编码的 JSON 从 DB 解析为 JS

转载 作者:行者123 更新时间:2023-12-03 12:37:37 24 4
gpt4 key购买 nike

我的数据库中有以下列,其中包含 UTF-8 编码的字母:

  • 中文单词

    你好

console.log(value) 给出:null

<小时/>

如果我将它们更改为非 UTF-8,

  • 中文单词

    你好

console.log(value) 给出:ni hao

<小时/>

如果我只保留一个字

  • 中文单词

console.log(value) 给出:n?

<小时/>

jQuery:

function getData (functionToRun) {  
$.getJSON("phpscripts.php", {"_functionToRun" : functionToRun},
function (returned_data) {
var value = returned_data.chineseWords;
console.log(value);
}
);
}

PHP:

$qry = 
'SELECT *
FROM tasks
WHERE npc_id_fk = 1';

$result = $mysqli->query($qry) or die(mysqli_error($mysqli));

while ($row = $result->fetch_assoc()) {
echo json_encode($row);
}

为什么浏览器会输出 nulln?

<小时/>

编辑:关注 this blog on encoding and decoding UTF-8 ,我尝试过:

console.log(decodeURIComponent(value));//输出:n?

<小时/>

编辑2:

连接:

<?php 
$mysqli = new mysqli("localhost", "root", "", "my_db");

if ($mysqli->connect_errno) {
echo "Failed to connect to MySQL: (Error code: " . $mysqli->connect_errno . ")... " . $mysqli->connect_error;
}
?>

我的 phpscripts.php 文件的开头:

<?php
include 'runDB.php';
mysql_set_charset($mysqli, "utf8");

index.php:

<!DOCTYPE html>
<html>
<head>
<title>Playground</title>
<meta charset="UTF-8">

最佳答案

在 HTML header 中添加:

<meta charset="UTF-8">

在你的 PHP Mysql 调用中添加:

mysql_set_charset('utf8',$connectToDBVar);

在数据库 mysql_connect 之后但在查询之前

关于javascript - 将 UTF-8 编码的 JSON 从 DB 解析为 JS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23667580/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com