我有一个问题-我需要插入数据从json到mysql,但它是插入最后一个videoId,它是3个相同的videoId插入7EDPROQa4i0。我需要从上到下从json到数据库的插入。我不明白出了什么问题
JSON数据库
{
"resultsPerPage": 3
},
"items": [
{
"id": {
"videoId": "kHPqpxDE50c"
},
"snippet": {
"channelId": "UCiP20o92_7jUYwj-ulVLifw",
},
}
},
{
"id": {
"videoId": "DbAlCl3kk-M"
},
"snippet": {
"channelId": "UCiP20o92_7jUYwj-ulVLifw",
},
}
},
{
"id": {
"kind": "youtube#video",
"videoId": "7EDPROQa4i0"
},
"snippet": {
"channelId": "UCiP20o92_7jUYwj-ulVLifw",
},
}
}
]
}
PHP代码:
$loop = mysqli_query($conn, "SELECT channelid, videoId FROM users ORDER BY id")
or die (mysqli_error($conn));
while ($row = mysqli_fetch_array($loop))
{
$url = 'https://www.googleapis.com/youtube/v3/search?order=date&part=snippet&channelId='.$row['channelid'].'&maxResults=3&key=KEY';
$content = file_get_contents($url);
$json = json_decode($content, true);
foreach($json['items'] as $row)
{
$channelid = $row['snippet']['channelId'];
$videoId = $row['id']['videoId'];
$videoId1 = $row['id']['videoId'];
$videoId2 = $row['id']['videoId'];
$sql = "INSERT INTO users(channelid, videoId, videoId1, videoId3) VALUES('$channelid', '$videoId', '$videoId1', '$videoId2')
ON DUPLICATE KEY UPDATE channelid='$channelid', videoId='$videoId', videoId1='$videoId1', videoId2='$videoId2';
";
mysqli_query($conn, "SET NAMES utf8");
if(!mysqli_query($conn,$sql))
{
die('Error : ' . mysqli_error($conn));
}
}
}
$conn->close();
?>
https://stackoverflow.com/questions/52748204
复制相似问题