0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

kintone でレコードのフィールド値を取得、更新する PHP プログラム

Last updated at Posted at 2025-01-15

kintone でレコードのフィールド値を取得、更新する PHP プログラムを作りました。編集不可にした項目を更新するときに使用します。または、添付ファイル情報を取得します。

実行

php 31_get_record.php

取得

31_get_record.php
<?php
$appno = "123";
//$appno = "124";
//$appno = "125";

$recid = "55"; // レコードID
$fldnm = "住所"; // フィールド名

$text = 'UserName:YourPassWord';

$body = json_encode([
    "app" => $appno,
    "id" => $recid
]);

$option = [
    'http' => [
        'method' => "GET",
        'header'=> "X-Cybozu-Authorization: " . base64_encode($text) . "\r\n" .
                  "Content-Type: application/json\r\n",
        'content' => $body,
    ]
];

$context = stream_context_create($option);

$response = file_get_contents("https://sample.cybozu.com/k/v1/record.json", false, $context);

$data = json_decode($response, true);

// レスポンスを表示する
//echo $response;

// JSON を整形して表示する
//echo json_encode($data, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE);

// 値を表示する(不要のときは /* */ で括る)
if (isset($data['record'][$fldnm]['value'])) {
    echo $data['record'][$fldnm]['value']; // 値
//    echo $data['record'][$fldnm]['value'][0]; // 配列の値
//    var_dump($data['record'][$fldnm]['value']); // 配列
} else {
    echo $fldnm . "の値が見つかりません。";
}
?>

実行

php 32_update_parameter.php

更新

32_update_parameter.php
<?php
$appno = "123";
//$appno = "124";
//$appno = "125";

$recid = "55"; // レコードID

$text = 'UserName:YourPassWord';

$body = json_encode([
    "app" => $appno,
    "id" => $recid,
    "record" => [
        "住所" => [ // 文字列(1行)
            "value" => "東京都千代田区麹町"
        ]
    ]
]);


//        "確認作業" => [ // チェックボックス
//            "value" => [ "確認" ]
//        ]

//        "確認作業" => [ // チェックボックス
//            "value" => [  ]
//        ]


// 添付ファイル
// 直前に curl でファイルをアップロードして、そのレスポンスの fileKey をメモする
// curl -X POST 'https://sample.cybozu.com/k/v1/file.json' -H 'X-Cybozu-API-Token: xxxxxxxxxxxx' -F 'file=@test.xlsx'
// 既に添付ファイルがある場合は、その fileKey を取得して、それも一緒に追加する
// php 31_get_record.php (同じ recid と fldnm を指定)

//        "写真" => [ // 添付ファイル
//            "value" => [
//                [
//                    "fileKey" => "123456-abcd-efdh-7890-123456789"
//                ]
//            ]
//        ]

//        "写真" => [ // 添付ファイル(既に添付ファイルがある場合)
//            "value" => [
//                [
//                    "fileKey" => "123456789012345678901234567890"
//                ],
//                [
//                    "fileKey" => "abcdefghijklmnopqrstuvwxyz"
//                ]
//            ]
//        ]

//        "写真" => [ // 添付ファイル(削除)
//            "value" => []
//        ]


$option = [
    'http' => [
        'method' => "PUT",
        'header'=> "X-Cybozu-Authorization: " . base64_encode($text) . "\r\n" .
                  "Content-Type: application/json\r\n",
        'content' => $body,
    ]
];

$context = stream_context_create($option);

$response = file_get_contents("https://sample.cybozu.com/k/v1/record.json", false, $context);

$data = json_decode($response, true);

//echo $response;
echo json_encode($data, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE);
?>

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?