作者:mobiledu2502856013 | 来源:互联网 | 2022-12-01 15:02
我试图将一些数据从JSON文件插入到SQL数据库中.
我已经编写了这个脚本来读取JSON,对其进行解码并插入它,但是我只获得了第一个JSON行,因为我认为它没有正确循环.
我也得到一个重复的错误,我认为这是因为代码试图循环相同的行,而不是JSON中的下一行!(仅插入第一个JSON项)
如何让我的脚本循环我的JSON中的每一行并插入它?
谢谢!
我正在使用的代码:
query($query);
if ($link->query($query) === TRUE) {
echo "Property Added";
} else {
echo "Error: " . $query . "
" . $link->error;
}
mysqli_close($link);
?>
Nigel Ren..
5
问题是你只在循环结束后执行查询,你需要在每一行上运行它...
foreach($obj as $item) {
$query = "INSERT INTO unverified_list (
title,
street_address,
locality
) VALUES (
'".$item['title']."',
'".$item['street_address']."',
'".$item['locality']."'
)"; // Remove } from here to after next bit of code
$result = $link->query($query);
if ($link->query($query) === TRUE) {
echo "Property Added";
} else {
echo "Error: " . $query . "
" . $link->error;
}
}
虽然现在这将为您插入的每一行提供一条消息.
您还应该考虑使用准备好的语句来保护您免受各种潜在问题的影响.
1> Nigel Ren..:
问题是你只在循环结束后执行查询,你需要在每一行上运行它...
foreach($obj as $item) {
$query = "INSERT INTO unverified_list (
title,
street_address,
locality
) VALUES (
'".$item['title']."',
'".$item['street_address']."',
'".$item['locality']."'
)"; // Remove } from here to after next bit of code
$result = $link->query($query);
if ($link->query($query) === TRUE) {
echo "Property Added";
} else {
echo "Error: " . $query . "
" . $link->error;
}
}
虽然现在这将为您插入的每一行提供一条消息.
您还应该考虑使用准备好的语句来保护您免受各种潜在问题的影响.