注意事項
- こちらは連携フォームのサンプルになります。
下記実装サンプルを参考にお手持ちのフォームの変更をお願いします。
(お手持ちのフォームの変更方法については弊社ではサポートできませんのでご了承ください) - ※作成には高い技術力が必要になりますのでphpなどの作成、編集が出来る方のみの使用を推奨しています。
連携フォームサンプル
連携フォームの前提として、
連携フォームで登録した情報がBowNowと外部システムに送信、登録されるために作成されるものです。
現在あるフォームを変更するために作成されたものではございませんのでご了承ください。
このサンプルフォームはBowNowのみで作成し、外部ツールとの連携を行っておりません。
(Zipファイルでダウンロードされます)
このサンプルフォームは
・bowfree_index.php(フォーム画面)
・bowfree_success.php(成功遷移先)
・bowfree_error.php(エラー遷移先)
上記3つのphpで構成されています。
確認箇所
問い合わせフォームの値をBowNowに受信するため、参照先をBowNowAPIに変更
タグをBowNow用に変更を行います。
変更方法は、管理画面上、連携フォームのフォームIDをクリックすると、「フォーム設置タグ」が表示されますので作成されたフォームに設定してください。
▼ソースイメージ
問い合わせフォームの値(各name属性)の設定や登録後の転送先URLの設定
BowNowの連携フォーム作成画面の「項目設定」で設定した「連携するフォームの値」を作成したフォームへ設定します。
【管理画面側】登録後の転送先URLの設定
BowNowに登録後、外部システムへ登録するための転送先URLを設定してください。
設定箇所は連携フォーム作成画面の「基本情報」の連携フォーム情報になります。
※今回は、BowNowのみの設計になるので転送先を作成したphpにしていますが、外部システムをご利用の場合は外部システムの転送先URLを設定してください。
BowNowからGET送信される値(正常・エラー含め)を取得できるようプログラムの修正
BowNowがフォームデータを受信した際、正常完了・エラー発生を問わず、指定された戻り先URL(リダイレクト先)に対してGET通信(クエリパラメータ)でデータを返却します。
- 正常終了時:入力内容が配列(GETパラメータ)として返却されます。
-
エラー発生時:入力内容に加え、エラー情報(
_errors_*)がクエリパラメータとして戻り先URLに付与されます。
エラーパラメータの受取・表示仕様
入力文字数の超過(例:1000文字制限など)や必須項目の未入力等によってバリデーションエラーが発生した場合、エラー内容はリダイレクト先URLのパラメータ(_errors_*)としてのみ返却されます。
フォーム送信時の文字数制限
-
クエリパラメータ(エラーレスポンス)イメージ:
https://example.com/contact/?_errors_detail=お問い合わせ詳細は1000文字以内で入力してください。&about=...
注意事項
フォーム送信後、リダイレクト先の顧客側Webページプログラムでこのクエリパラメータ(_errors_*)をデコードおよびキャッチして画面上にエラーメッセージとして表示(描画)しない場合、ユーザー側からは「何も起きていない(送信されたつもりのままデータが登録されていない)」状態に見えてしまいます。 エラーのハンドリングおよび画面表示は顧客側システムのプログラム仕様となりますので、必ずエラーパラメータを受取・表示するプログラム処理を実装してください。
送信エラーを防止・感知させるための対策
送信者の利便性向上および不達トラブルを防ぐため、フォーム作成時には以下のいずれか(または両方)の実装を推奨いたします。
-
顧客フォーム側でのフロントバリデーション(文字数制限等)の実装
- 入力フォームのHTML/JavaScript側であらかじめ文字数制限(例:
maxlength="1000"など)を設定し、上限を超えた状態では送信できない制御を設ける。
- 入力フォームのHTML/JavaScript側であらかじめ文字数制限(例:
-
エラーメッセージ(
_errors_*)の画面描画処理- BowNowからリダイレクトで戻された際、URLに含まれる
_errors_detail等のパラメータを解析し、フォーム画面上に「〇〇は1000文字以内で入力してください」といった警告メッセージを動的に表示する。
- BowNowからリダイレクトで戻された際、URLに含まれる