繁体   English   中英

将JSON编码的数据插入MySQL

[英]Inserting json encoded data into mysql

这是一个后续问题,之前我曾问过有关将json插入mysql的问题。 我再次对其进行了编码,现在我希望将其打印回mysql。 我不知道我应该如何将编码的json输出作为字符串打印回mysql中。 以下是我当前的代码

<?php
$json = array
   (
   array("pineapple","yellow"),
   array("watermelon","red"),
   array("orange","orange")
   );
var_dump($json);
var_dump(json_decode($json, true));

$newelements = json_encode( $json, JSON_FORCE_OBJECT | JSON_UNESCAPED_UNICODE );
echo $newelements;

$username = "root";
$password = "";
$hostname = "localhost"; 


$dbhandle = mysql_connect($hostname, $username, $password) 
  or die("Unable to connect to MySQL");
echo "Connected to MySQL<br>";


$selected = mysql_select_db("json",$dbhandle) 
  or die("Could not select json");


  //  foreach ($enc as $fruit => $color) {

    $db_insert = mysql_query("INSERT INTO fruits (fruit,color) VALUES('$fruit','$color')");
    mysql_query($db_insert);


    if (!$db_insert)
    {
    die('Could not connect - event insert failed: ' . mysql_error());
    }
  //  }
?>

任何帮助将不胜感激。在此先感谢:)

因为您有一个数组数组,所以正确的foreach看起来像这样:

$values = array();
foreach ($newelement as $element) {
    $values[] = "('".mysql_real_escape_string($element[0])."','".mysql_real_escape_string($element[1])."')";
}

$db_insert = mysql_query("INSERT INTO fruits (fruit,color) VALUES ".implode(",", $values);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM