php忽略错误并继续将json数据插入mysql

时间:2018-01-31 18:26:11

标签: php mysql json insert ignore

在多个网站上进行了大量阅读,但遗憾的是还没有找到解决方案。所以任何帮助都将受到高度赞赏。

我有一个php脚本,它从URL读取json数据,然后将数据插入到mysql数据库中。不幸的是,我一直收到以下错误

  

“JSON错误:3控制字符错误,可能编码错误”。

这个错误是什么意思,如何忽略它和/或跳过有问题的记录并继续将数据插入mysql?

下面是php脚本的视图:

<?php

ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

$host = "*****";
$username = "*****";
$password = "*****";
$dbname = "*****";
$con = mysqli_connect($host, $username, $password, $dbname) or die('Error in  
Connecting: ' . mysqli_error($con));

$st = mysqli_prepare ($con, 'INSERT INTO PlacesTable (Establishment_Name, 
Establishment_Image, Telephone_Number,BookingNumber,) 

VALUES (?, ?, ?, ?)');


mysqli_stmt_bind_param($st, 'ssss', 

$Name, $Image, $Telephone_Number,$BookingNumber);


$jsondata = file_get_contents("https://websitename.html");
echo $jsondata; 

$data = json_decode($jsondata, true);
if ( json_last_error() !== JSON_ERROR_NONE ) {
echo 'JSON Error : ' . json_last_error() . 
' ' . 
json_last_error_msg();
exit;
print_r($alldata);
}

foreach ($data["Places"] as $row) {

$Name = $row['Name'];
$Image = $row['Image'];
$Telephone_Number = $row['Telephone_Number'];
$BookingNumber = $row['BookingNumber'];

mysqli_stmt_execute($st);
echo mysqli_errno($con) . ": " . mysqli_error($con) . "\n";

}
mysqli_close($con);
?>

0 个答案:

没有答案