2012-07-27 13 views
11

Estamos considerando portar un script heredado a ColdFusion 10 y creo que he encontrado un error/cambio en la funcionalidad relacionado con el uso de múltiples campos de formulario usando el mismo nombre. En ColdFusion 9, estos se han agregado a la variable relevante con comas, pero en ColdFusion 10, si el caso de las variables es diferente, un campo sobrescribirá al otro.ColdFusion 10 forma cambio de funcionalidad variable relacionado con el caso de las variables

El siguiente código de prueba:

<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#"> 

Produce en ColdFusion 9

TEST = 1,0 

En ColdFusion 10:

TEST = 0 

Alguien más ha experimentado este comportamiento y sabe si se trata de una ¿error o funcionalidad prevista? Sé que la aplicación no debería usar el mismo nombre de variable en diferentes casos, por lo que se verá cómo cambiar esto, pero me pregunté si alguien tenía más información sobre el problema.

Editar

he presentado a este error de Adobe en https://bugbase.adobe.com/index.cfm?event=bug&id=3298179

+3

Definitivamente enviaría esto como un error. CF no debe ser sensible a mayúsculas y minúsculas con nombres de variables. – Sharondio

+0

Curiosamente, el comportamiento cambia cuando 'enctype =" multipart/form-data "' (o/s windows). Los valores no se sobrescriben, pero fieldNames enumera el valor dos veces, es decir, 'TEST = 1,0' y' FORM.FIELDNAMES = TEST, TEST' – Leigh

+0

. Por favor, presente un informe de error y ¡todos podemos votarlo allí en vez de aquí! https://bugbase.adobe.com/ – Henry

Respuesta

1

Este error parece haber sido confirmado por Adobe en Bug #3298179. Se informa que se ha corregido en la compilación 283412 y que actualmente se encuentra en fase de prueba. Actualizaré esta respuesta con la información relevante de la revisión una vez que se haya publicado públicamente.

2

@Russ

Esta característica es de hecho sólo que una característica. Creo que te has perdido el punto en la publicación anterior de que especificar el mismo nombre de campo con diferentes casos ya no pasa el resultado de una lista.

Una de las principales cosas en las que yo y muchos hemos usado esta funcionalidad es en casillas de verificación. Un grupo puede tener el mismo nombre, por lo que su validación es sencilla pero con valores diferentes, de modo que CF puede procesar cuáles se marcaron antes de enviar el formulario (obviamente, los elementos no seleccionados no se pasan a la lista).

Cuestiones relacionadas