1
にJSONファイルから正しい値を取得します。しかし、問題は、私は特定のフィールドから値を取得したい、ですが、それはただこれは私が輸入しようとしているJSONオブジェクトのうちの一つの例である1または2カントは、私は私自身のMySQLサーバへの外部APIからデータをインポートしようとしているMySQLサーバ
に設定します:
{
_index: "events",
_type: "event",
_id: "2290", **<-- THIS IS THE VALUE I WANT TO GET**
_score: null,
fields: {
genres: [
"["World Music","Dance","Theater"]"
],
name: [
"Festival Spoffin 2016"
],
start: [
"2016-08-25T11:00:00+0000"
],
venue.location: [
5.387848,
52.1563989
],
description: [
"TEXT"
],
logo: [
"URL"
],
header: [
"URL"
],
venue.country: [
"Nederland"
],
venue.city: [
"Amersfoort"
]
},
sort: [
1472122800000
]
},
しかし、私は良い作品私のクエリを実行すると、ここでのコードは次のとおりです。
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
$jsondata = file_get_contents('https://hugo.events/genre/dance/next/900/1');
$data = json_decode($jsondata, true);
$uname = '****';
$upass = '****';
$dbh = new PDO('mysql:host=localhost;dbname=wtd', $uname, $upass);
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = "TRUNCATE TABLE dance";
$stmt = $dbh->prepare($sql);
$stmt->execute();
if (!$stmt) {
echo "Statement failed";
} else {
$statement = $dbh->prepare("INSERT INTO dance(event_id, event_name, event_date, event_country, event_genres, event_desc, event_logo, event_header_pic)
VALUES(:eventid, :name, :date, :country, :genres, :desc, :logo, :header_pic)");
$id = $data[1]['hits']['hits'][1]['_id'];
foreach ($data[1]['hits']['hits'] as $row) {
$statement->execute(array(
"eventid" => $row['_id'][0], **<-- THIS IS THE COLUMN I WANT TO PUT IT IN**
"name" => $row['fields']['name'][0],
"date" => $row['fields']['start'][0],
"country" => isset($row['fields']['venue.country']) ? $row['fields']['venue.country'][0] : '',
"genres" => $row['fields']['genres'][0],
"desc" => $row['fields']['description'][0],
"logo" => $row['fields']['logo'][0],
"header_pic" => $row['fields']['header'][0]
));
}
echo "Data inserted into dance table";
}
それはちょうど私がJSONとしてそれをエコーしたときに、これを返し、また、phpMyAdminの中で同じことを示しています
{
id: "1",
event_id: "2", **<-- THIS IS SUPPOSED TO BE THE VALUE OF _ID**
event_name: "Festival Spoffin 2016",
event_date: "2016-08-25T11:00:00+0000",
event_country: "Nederland",
event_genres: "["World Music","Dance","Theater"]",
event_desc: "TEXT",
event_logo: "URL",
event_header_pic: "URL"
},
おかげで、それが働きました。私ができるときあなたの答えを受け入れるだろう! –