-1

mysql セルで次の json コードを取得しました。

{
"0ba9f1d1-787c-4d8e-a820-0c973bbd20fb":  {
    "0":  {
        "value": "Alex"
     }
},
"9a7df867-1c25-4e15-b0dd-1d20031c31fb":  {
    "0":  {
        "value": "Άλέξανδρος Γιόου"
    }
},
"659d5d3d-ac12-4f17-91c0-334fbd4f3538":  {
    "option":  {
        "0": "0",
        "1": "0"
    },
    "select": "1"
  }
}

PHPの値の一部を更新したいと思います。次のコードを試してみましたが、予期しない結果が得られます。

$check = mysql_query("SELECT `elements` FROM `test_zoo_item` WHERE `id` = 34839");
$decodedelements = json_decode($elements, true);
$decodedelements['0ba9f1d1-787c-4d8e-a820-0c973bbd20fb'][0]['value'] = "Test";
$decodedelements['9a7df867-1c25-4e15-b0dd-1d20031c31fb'][0]['value'] = "Γιώργος";
$decodedelements['659d5d3d-ac12-4f17-91c0-334fbd4f3538']['option'][0] = "3";
$newelements = json_encode($decodedelements);
mysql_query("UPDATE `test_zoo_item` SET `elements`='$newelements' WHERE `id`=34839");

私の更新されたセルは次のとおりです。

{
"0ba9f1d1-787c-4d8e-a820-0c973bbd20fb": [{
    "value": "Alex"
}],
"9a7df867-1c25-4e15-b0dd-1d20031c31fb": [{
    "value": "u00ce...fu0082"
}],
"659d5d3d-ac12-4f17-91c0-334fbd4f3538": {
    "option": ["0", "0"],
    "select": "1"
}
}

次の問題を解決できるように、お手伝いできますか?

  • "0": {"value": "Alex"}に変更[{"value": "Alex"}]
  • "value": "Άλέξανδρος Γιόου"に変更"value": "u00c....cfu0082"
  • "option": {"0": "0","1": "0"}に変更"option": ["0", "0"]
4

2 に答える 2