gpt4 book ai didi

php - 从json文件添加到mysql db数据

转载 作者:行者123 更新时间:2023-11-28 23:14:17 24 4
gpt4 key购买 nike

代码有问题吗?它不是将数据插入数据库,我不知道出了什么问题。有人可以帮帮我吗?

这是php代码

<?php

include 'config.php';

$data = file_get_contents('programs.json');
$json = json_decode($data, TRUE);
if ($data != '' && count($json) > 0) {
$sql = "SELECT pid FROM programs";
$result = mysqli_query($conn, $sql);
$transArr = array();
if (mysqli_num_rows($result) > 0) {
while ($row = mysqli_fetch_assoc($result)) {
$transArr[] = $row["pid"];
}
}
$bulk_query = '';
$bulk_update_query = '';
$pid = '';
$pname = '';
$start_date = '';
$end_date = '';
$logo = '';
$short_description = '';
$description = '';
$ended_date = '';
$url = '';
$program_status = '';
$summary = '';
$categories = '';
foreach ($json as $key => $jsonRow) {


$pid = isset($jsonRow['id']) ? $jsonRow['id'] : '';
$pname = isset($jsonRow['name']) ? $jsonRow['name'] : '';
$start_date = isset($jsonRow['start_date']) ? $jsonRow['start_date'] : '';
$end_date = isset($jsonRow['end_date']) ? $jsonRow['end_date'] : '';
$logo = isset($jsonRow['logo']) ? $jsonRow['logo'] : '';
$short_description = isset($jsonRow['short_description']) ? $jsonRow['short_description'] : '';
$description = isset($jsonRow['description']) ? $jsonRow['description'] : '';
$ended_date = isset($jsonRow['ended_date']) ? $jsonRow['ended_date'] : '';
$url = isset($jsonRow['url']) ? $jsonRow['url'] : '';
$program_status = isset($jsonRow['program_status']) ? $jsonRow['program_status'] : '';
$summary = isset($jsonRow['summary']) ? floatval($jsonRow['summary']) : '';
$categories = isset($jsonRow['parent_category']['name']) ? $jsonRow['parent_category']['name'] : '';


if (!in_array($pid, $transArr)) {
$bulk_query.="('$pid','$pname','$start_date','$end_date','$logo','$short_description','$description',$ended_date,$url,'$program_status','$summary','$categories'),";
} else {
$sql = "UPDATE programs SET pid='$pid',name='$pname',start_date='$start_date',end_date='$end_date',"
. "logo='$logo',short_description='$short_description',description='$description',ended_date=$ended_date,url=$url,"
. "program_status='$program_status',summary='$summary',categories='$categories' WHERE pid=$pid";
mysqli_query($conn, $sql);
}
}
$bulk_query = rtrim($bulk_query, ",");
$sql = "INSERT INTO programs (pid,pname,start_date,end_date,logo,short_description,description,ended_date,url,program_status,summary,categories) VALUES $bulk_query";
$conn->query($sql);
createFileBackup();
echo ' Record Added';
}

?>

我正在尝试插入到 db 的 json 数据

[
{
"id": 12356,
"name": "test",
"start_date": "2017-06-14T21:00:00+00:00",
"end_date": null,
"logo": "test.png",
"short_description": "test short_description",
"description": "test description",
"ended_date": null,
"url": "http://www.test.com/",
"program_status": "Active",
"commissions": {
"details": [
{
"category": {
"id": 1,
"name": "Sales",
"cookie_length": 30,
"type": "sale",
"payout_type": "percent",
"tiers": [
{
"tier": {
"level": 1,
"action": "12.00",
"subaction": "12.00",
"formatted": {
"action": "12,00%",
"subaction": "12,00%"
}
}
}
]
}
}
],
"summary": {
"percent": "12,00%",
"flat": "-"
},
"tiers": {
"count_type": "clicks",
"amount": 1,
"levels": []
}
},
"categories": [
{
"parent_category": {
"name": "test",
"child_categories": [
{
"child_category": {
"name": "test2"
}
}
]
}
}
]
},
{
"id": 123456,
"name": "test",
"start_date": "2017-06-14T21:00:00+00:00",
"end_date": null,
"logo": "test.png",
"short_description": "test short_description",
"description": "test description",
"ended_date": null,
"url": "http://www.test.com/",
"program_status": "Active",
"commissions": {
"details": [
{
"category": {
"id": 1,
"name": "Sales",
"cookie_length": 30,
"type": "sale",
"payout_type": "percent",
"tiers": [
{
"tier": {
"level": 1,
"action": "12.00",
"subaction": "12.00",
"formatted": {
"action": "12,00%",
"subaction": "12,00%"
}
}
}
]
}
}
],
"summary": {
"percent": "12,00%",
"flat": "-"
},
"tiers": {
"count_type": "clicks",
"amount": 1,
"levels": []
}
},
"categories": [
{
"parent_category": {
"name": "test",
"child_categories": [
{
"child_category": {
"name": "test2"
}
}
]
}
}
]
}
]

数据库结构是

enter image description here

最佳答案

我用 $new_name = str_replace("'", "''", "$pname"); 解决了这个问题我在网上找到的,现在我可以用撇号插入到数据库变量中。谢谢你的帮助

关于php - 从json文件添加到mysql db数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44563849/

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