フォームブリッジのカスタマイズ(kintoneからのGET, kintoneへのPUT)

こんにちは。

エラー文に「Access-Control-Allow-Origin」とありますので、クロスドメイン制約に引っかかりGETできないのだと思います。

私も過去にkintoneから取得した値をフォームブリッジの初期値として設定する方法を探していたのですが、その時はフォームブリッジから直接GETすることは無理だと聞いて、親ページからpostmassageを実行することで解決しました。

(直接GETすることは無理だと書いておりますが、もし方法があったらすみません。調べが足りてなかったです。)

 

また、フォームブリッジを単体で使用せずにWebサイト内に表示する場合に限定されますが、

kintoneへのGET文は親ページのphpに組み込んではいかがでしょうか?

 

私の場合は、Wordpressで作成したページに、フォームブリッジで作成したフォームをiframeとして表示しております。

その時に使用しているコードを今回の要件に合わせてみました。

===================================================================================

<?php

$str = “<セミナー名>”;

//セミナー受講申し込み一覧アプリ
$search = ‘セミナー名 =’ . $str’;
$query = ‘query=’. utf8_uri_encode($search);
$url = ‘https://<サブドメイン>.cybozu.com/k/v1/records.json?app=1001’;
$url = “{$url}&{$query}”;

$headers = array( ‘X-Cybozu-API-Token’ => ‘<APIトークン>’ );
$res = wp_remote_get(
$url,
array(
‘headers’ => $headers
)
);

$return_value = json_decode( $res[‘body’], true );

//申し込みレコードの件数を確認(20件以下でフォームを表示、それ以上で非表示(受付終了))
if (count( $return_value[‘records’]) < 20) {
echo ‘<p><iframe frameborder=“0” scrolling=“auto” src=“<フォームブリッジのiframeURL>” width=“100%”></iframe></p>’;

} else {
echo ‘<p>受付は終了しました</p>’;
}

?>

===================================================================================

 

アプリを「セミナー申し込み受付アプリ」として1つにまとめ、セミナー名がリストアップされたドロップリストを作成します。

フォームブリッジはセミナー数の分だけ作成し、適切なセミナー名を初期値として設定します。

 

各セミナーのページが開かれたタイミングで上記のphpが設定したセミナー名でkintoneにGETし

レコード数が(=定員:仮に20名)以上であれば受付終了の文言を表示し、それ以下であればフォームを表示するといったコードです。

 

上記について、全く的外れなことを言っておりましたら申し訳ありません。

参考になれば幸いです。