11

従来のスクリプトをColdFusion10に移植することを検討しているところですが、同じ名前を使用する複数のフォームフィールドの使用に関連する機能のバグ/変更に遭遇したと思います。ColdFusion 9では、これらは関連する変数にコンマで追加されていましたが、ColdFusion 10では、変数の大文字と小文字が異なる場合、一方のフィールドがもう一方のフィールドを上書きします。

次のテストコード:

<form action="index2.cfm" method="post">
    <input type="hidden" name="test" value="1" />
    <input type="hidden" name="TEST" value="0" />
    <input type="submit" />
</form>

<cfdump var="#form#">

ColdFusion9で生成します

TEST = 1,0

ColdFusion 10の場合:

TEST = 0

他の誰かがこの動作を経験し、それがバグなのか意図された機能なのかを知っていますか?アプリケーションが異なる場合に同じ変数名を使用するべきではないことを私は知っているので、これを変更することを検討しますが、誰かがこの問題についてもっと情報を持っているかどうか疑問に思いました。

編集

このバグをAdobeのhttps://bugbase.adobe.com/index.cfm?event=bug&id=3298179に送信しました。

4

3 に答える 3

2

@Russ

この機能は確かにその機能です。同じフィールド名を大文字と小文字を区別して指定しても、リストの結果が渡されなくなるという上記の投稿のポイントを見逃したと思います。

私と多くの人が過去にこの機能を使用した主なものの1つは、チェックボックスです。グループに同じ名前を付けると、検証が簡単になりますが、値が異なるため、CFは、フォームの送信前にチェックされたアイテムを処理できます(明らかに、チェックされていないアイテムはリストに渡されません)。

于 2012-10-01T08:26:24.763 に答える
1

このバグは、アドビによってバグ#3298179として確認されているようです。ビルド283412で修正され、現在テスト段階にあると報告されています。これが公開されたら、関連する修正プログラム情報でこの回答を更新します。

于 2013-01-05T17:43:59.583 に答える
0

その「機能」は、少なくともCFMX6.1から存在しています。私は2008年にそれについてブログに書きました:http://cfruss.blogspot.com/2008/01/passing-multiple-same-named-arguments.html

于 2012-08-04T05:37:11.007 に答える