[英]insert json array into mysql database
嗨,我正嘗試將json數組插入到我的MySQL數據庫中,這對於php開發來說是新手,我已經看到了很多方法,幾乎沒有什么困惑,請幫幫我。
這是我的json數據。
[{ “Name”: “0”, “手機”: “DSF”, “城市”: “sdfsdf”, “電子郵件”: “DSF”},{ “名”: “13123123”, “手機”:“sdfsdfdsfsd ”, “城市”: “sdfsf”, “電子郵件”: “13123123”}]
我想將此json數組插入到我的mysql數據庫中,所以我使用了此代碼,但無法正常工作,請告訴我如何完成此操作。 我的PHP代碼。
<?php
$json = file_get_contents('php://input');
$obj = json_decode($data,true);
$obj[0]['name'];
$obj[1]['phone'];
$obj[2]['city'];
$obj[3]['email'];
//Database Connection
require_once 'db.php';
/* insert data into DB */
mysql_query("INSERT INTO `db512172115`.`trial` (name, phone, city, email)
VALUES ('".$obj->{'name'}."', '".$obj->{'phone'}."', '".$obj->{'city'}."', '".$obj->{'email'}."')");
//database connection close
mysql_close($con);
//}
?>
上面的代碼僅用於將值存儲到我的數據庫中,請幫助我解決該問題。
謝謝。
在json_decode函數中,您已指定'true',這將使返回數組。
然后,您嘗試將這些信息作為對象訪問,這將無法正常工作。 再加上返回兩個數組的事實,這表明您將需要一個foreach語句才能將這兩個數據插入數據庫中。
再看看foreach語句和數組,周圍有很多信息可以幫助您。
例如:
$array = json_decode($data,true);
foreach($array as $item) {
mysql_query("INSERT INTO `db512172115`.`trial` (name, phone, city, email)
VALUES ('".$item['name']."', '".$item['phone']."', '".$item['city']."', '".$item['email']."')");
}
除此之外,您正在使用不推薦使用的mysql_ *函數,應該考慮使用mysqli或PDO來提高安全性。
這是另一種簡單的方法
<?php
$json_value = file_get_contents('your_json_data_link');
$array = json_decode($json_value,true);
require_once 'db.php';
foreach($array as $item) {
$insert_value = "INSERT INTO `db512172115`.`trial` (name, phone, city,email)VALUES
('".$item['name']."', '".$item['phone']."', '".$item['city']."', '".$item['email']."')");
if ($con->query($insert_value ) === TRUE) {
echo "Record Successfully<br>";
}
else
{
echo "Error: " . $insert_value . "<br>" . $con->error;
}
}
?>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.