フォームの自動入力の仕組み

スキャンでは、各フォームの Name 属性を調べることで、「フォームの自動入力」ページに列挙された名前と一致しているかどうかが確認されます。使用不可のフィールドや、input type に submit、reset、button、または image が指定されているフィールドは無視されます。次に、フォームのフィールドに指定した値が、Action 属性で指定された URL に送信されます。

次のような動作条件があります。

  • フォームのフィールド (INPUT タグ) に名前が割り当てられるようにサイトが構成されている必要があります。そうしないと、フォームの自動入力で突き合わせを実行する対象がないことになります。
  • Action 属性に URL が指定されている必要があります。フォームの自動入力では、mailto アクションおよび JavaScript アクションを実行できません。Action 属性に mailto または JavaScript への参照が指定されているフォームは無視されます。
  • 既存の隠しフィールドおよびチェック・ボックスの状態は変更されません。
  • ラジオ・ボタンの場合は、選択されたボタンの値が使用されます。ボタンが選択されていない場合は、一致するラジオ・ボタン値を確認するために、「フォームの自動入力」ページが調べられます。一致が見つからない場合は、最初のボタンが使用されます。
  • 選択フィールドの場合は、選択されたオプションが最初のオプションでない限り、そのオプションが使用されます。これは、単に「ヒント」として用意されている値が選択されるのを避けるためです。何も選択されていない場合は、一致する選択フィールド値を確認するために、「フォームの自動入力」ページが調べられます。一致が見つからない場合は、最後のオプションが使用されます。

フィールドの突き合わせでの競合の解決

複数のフォーム・フィールドの突き合わせで競合がある場合、スキャン・ジョブでは、次の基準を使用して、一致の優先順位を決めます。

優先順位 パラメータ URL
0 (完全一致突き合わせ) はい

例: 国または地域

はい

例: www.example.com

1 いいえ

例: regexp:coun

はい

例: www.example.com

2 はい

例: 国または地域

いいえ

例: URL なし

3 いいえ

例: regexp:cou

いいえ

例: URL なし

フォームのパラメーターが、同じ優先順位の複数の「フォームの自動入力」項目に一致する場合は、リストの最初の一致が使用されます。上の例の場合は、regexp:cou より前に regexp:coun が使用されます。

フォームで送信される内容の確認

フォームは、次の条件 1 に該当し、かつ、2 または 3 に該当する場合に、次の表に従って送信されます。

  1. フォームの自動入力が有効である。
  2. テキスト・フィールド、テキスト域フィールド、およびパスワード・フィールドがすべて入力に一致するか、定義済みである。
  3. 「フォームの自動入力」ページで「不明なパラメーターにデフォルト値を入力する」オプションが選択されている。
    コントロール・タイプ フィールド名 定義済み フォーム送信
    ボタン    
      一致しない いいえ 送信されません。
      一致しない はい 送信されません。
      一致 いいえ 送信されません。
      一致 はい 送信されません。
    チェック・ボックス     
      一致しない いいえ 送信されません。
      一致しない はい 更新日:
      一致 いいえ 送信されません。
      一致 はい 更新日:
    非表示    
      一致しない いいえ
      一致しない はい 定義済み
      一致 いいえ
      一致 はい 定義済み
    イメージ    
      一致しない 該当なし 以下を送信します。ImageName.y and ImageName.x
      一致 該当なし 以下を送信します。ImageName.y and ImageName.x
    ラジオ    
     一致しない いいえ 最初のラジオ値
      一致しない はい 定義済み
      一致 いいえ 「フォームの自動入力」値が使用可能な値である場合は、その値。それ以外の場合は、最初のラジオ値が使用されます。
     一致 はい 定義済み
    Select (選択)     
     該当なし 該当なし オプションがない場合: 送信されません。
     該当なし 該当なし オプションが 1 つある場合: そのオプションが送信されます。
     該当なし 該当なし 複数のオプション: 選択されたオプションが最初のオプションでない場合は、選択されたオプション値が送信されます。
     該当なし 該当なし 複数のオプション: 一致があり、「フォームの自動入力」値が指定された値の 1 つである場合は、その値が送信されます。
     該当なし 該当なし 複数のオプション: 一致があり、「フォームの自動入力」値が指定された値の 1 つでない場合は、最後の値が送信されます。
     該当なし 該当なし 複数のオプション: 一致がない場合は、最後の値が送信されます。
    送信    
     該当なし いいえ 以下を送信: 「Submit Query」
      該当なし はい 定義済みの値が送信されます。
     該当なし いいえ 以下を送信: 「Submit Query」
     一致 はい 定義済みの値が送信されます。
    テキスト、テキスト域、およびパスワード    
     一致しない いいえ 「デフォルト」
      一致しない はい 定義済み
      一致 いいえ 「フォームの自動入力」値が送信されます。
     一致 はい 「フォームの自動入力」値が送信されます。