Я Синтаксический Этот JSon массив, и я хочу взять type
объект и положить, что в Нью-Column type2
, и это один ряд моих JSon строк, Но мой Secend Row является Defference и я получаю уведомление, Как я могу сделать условие для типа, чтобы пропустить это уведомление?, когда я не type
В моей JSON Это моя JSON в строке 1 и в порядке:Синтаксический JSON из неполной строки с помощью PHP
[{"id":"26","answer":[{"option":"3","text":"HIGH"}],"type":"3"},
{"id":"30","answer":[{"option":"3","text":"LOW"}],"type":"3"},
{"id":"31","answer":[{"option":"3","text":"LOW"}],"type":"3"}]
И Это моя JSON в строке 2 Без type
и я получить два ,,:
[{"id":"26","answer":[{"option":"3","text":"HIGH"}]},
{"id":"30","answer":[{"option":"3","text":"LOW"}]},
{"id":"31","answer":[{"option":"3","text":"LOW"}]]
И Это мой код:
<?php
$con=mysqli_connect("localhost","root","","array");
mysqli_set_charset($con,"utf8");
// Check connection
if (mysqli_connect_errno()){
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$sql="SELECT `survey_answers`,us_id FROM `user_survey_start`";
if ($result=mysqli_query($con,$sql)){
while ($row = mysqli_fetch_row($result)){
$json = $row[0];
if(!is_null($json)){
$jason_array = json_decode($json,true);
// type2
$type = array();
foreach ($jason_array as $data) {
$type[] = $data['type'];
}
$types= implode(',',$type);
$sql2="update user_survey_start set type2='$types' where us_id=".$row[1];//run update sql
echo $sql2."<br>";
mysqli_query($con,$sql2);
}
}
}
mysqli_close($con);
?>
и это мой выход: Примечание: Undefined индекс: тип е в C: \ wamp64 \ WWW \ JSON \ json.php на линии 20 обновление user_survey_start набор type2 = ',,' где us_id = 256793
вы должны проверить, являются ли адресности значения массива $ типа или нет? 'if (isset ($ types) && $ types! = '') {$ types = implode (',', $ type); } else {$ types = ''; } ' –
Я новичок в PHP Можете ли вы исправить мой код Пожалуйста, –
Вы сообщение об ошибке не имеет ничего общего с вашим запросом. Вам просто нужно проверить, существует ли '$ data ['type']' перед его использованием. Проверьте функцию php ['array_key_exists()'] (http://php.net/manual/en/function.array-key-exists.php) –