Sorry voor de misschien iets vage titel, ik zal het proberen uit te leggen. Ik krijg via een aan API, Json binnen die decode ik en dan komt er een array als in onderstaande voorbeeld uit.Deze wil ik informatie graag opslaan in my MySQL DB.
Doordat de structuur niet altijd het zelfde is (het aantal discriptions verschilt) krijg ik uiteraard de de error "Undefined offset" omdat niet alle arrays meerdere discriptions heeft. Is hier een oplossing voor??
<code>
<?php
$array = Array
(
"data" => Array
(
"4353" => Array
(
"id" => 4353,
"name" => "Example1",
"description" => Array
(
"0" => "description 1",
"1" => "description 2",
"2" => "description 3",
),
),
"4352" => Array
(
"id" => 4352,
"name" => "Example2",
"description" => Array
(
"0" => "description 1",
),
),
"4113" => Array
(
"id" => 4113,
"name" => "Example4",
"description" => Array
(
"0" => "description 1",
"1" => "description 2",
"2" => "description 3",
"3" => "description 4",
),
),
)
);
//store
foreach($array['data'] as $key => $value) {
$sql[] = "
(
'" . mysql_real_escape_string($array['data'][$key]['id']) . "',
'" . mysql_real_escape_string($array['data'][$key]['name']) . "',
'" . mysql_real_escape_string($array['data'][$key]['description'][0]) . "',
'" . mysql_real_escape_string($array['data'][$key]['description'][1]) . "',
'" . mysql_real_escape_string($array['data'][$key]['description'][2]) . "',
'" . mysql_real_escape_string($array['data'][$key]['description'][3]) . "'
)";
}
$sql = "INSERT INTO masteries (id, name, description1, description2, description3, description4) VALUES " . implode(",",$sql) . "";
if (mysqli_query($connect, $sql)) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . mysqli_error($connect);
}
?>
</code>
1.902 views