Mejorar el mensaje de error
La buena noticia es que usted puede resolver ambos problemas, tan sólo aportando un mensaje alternativo en el atributo de valor del campo oculto, como en el ejemplo siguiente: Ahora, la forma como se valida, si el usuario no se proporciona, el usuario recibirá nuestro mensaje de error personalizados en lugar de error por defecto de ColdFusion mensaje. Hay un error en ColdFusion MX, donde los mensajes de error personalizados para los campos de formulario requerido son ignorados. Se trata de un problema conocido con Macromedia y está previsto que se fijará en su próxima ColdFusion MX Updater 2, que debería estar disponible para su descarga por el momento se publique este artículo. Aunque la cadena preveía el atributo de valor sólo puede ser cualquier texto que usted desea visualizar, poniendo HTML adicional dentro de la cadena es también aceptable. Porque es simplemente pasa a través del navegador, usted podría, por ejemplo, el uso o etiquetas para añadir un poco más de formato a tus mensajes de error. Bueno, por lo que el valor del atributo le permite mejorar la redacción del mensaje de error, pero ¿qué pasa con el aspecto general de la pantalla en la que la ofrecen? ¿Cómo esto de los mensajes afectan a la apariencia general de la aplicación de colores, con su pastel del fondo del cuerpo azul y colores de texto adecuados, de repente aparezca en pantalla con su texto, Times New Roman negro sobre un fondo blanco? ¿Y la barra de navegación de su sitio? Si un usuario tiene preguntas sobre el error que aparece, ¿cómo puede encontrar su página Contacte con nosotros? Los usuarios ni siquiera ver los pies de página estándar con un enlace al Webmaster. De repente, esta herramienta automática nifty no parece tan útil como lo hizo a primera vista. De hecho, muchos desarrolladores han abandonado simplemente por esta misma razón. Es un problema que puede resolverse, sin embargo, al menos en un grado mayor que salir de la página en esta llanura blackon formato blanco. Usted puede controlar toda la disposición de la página (color, fuente, etc) mediante el uso de etiquetas HTML normales. Usted incluso puede colocar las barras de herramientas de navegación y otras características de la derecha en la página. La solución es añadir a su código de CFERROR type = "validación", que le permite designar a una plantilla de control de errores de su propia creación para dar formato a la apariencia de estos sólo errores de validación. El último de los tres problemas identificados en la parte anterior sobre el uso de este servidor automático de validación puede ser el peor de todos, y para muchos, es motivo suficiente para ni siquiera recomienda el uso de la parte del servidor de validación automática. El problema es que el proceso requiere que el usuario ", utilice el botón Atrás de su navegador para regresar a la página anterior y corregir los problemas enumerados." Es una cosa buena para recomendar? Probablemente no. En algunos casos, ello hace que la información introducida en el formulario que se pierda! Imaginemos la frustración de un usuario de pasar un buen poco de tiempo para llenar un formulario de registro que está pidiendo varias piezas de datos. S / él lo presenta, se le dice que contiene un error (quizás sólo un error), y el usuario pulsa el botón Atrás para encontrarse con que se limpia el formulario! Y usted puede hacer absolutamente nada acerca de este problema. Por lo general relacionadas con la caché del navegador cuestiones que no son fáciles de controlar. Usted puede pensar que esta no es la gran cosa de todos modos, porque no requiere la validación significa que el usuario no escribe nada para el campo necesario en el primer lugar, pero consideran que se le puede pedir varios campos de datos, de los cuales sólo uno no pasa la validación. La cuestión no es tan grave si el sistema es sólo para nombre de usuario y contraseña. Pero en una forma más compleja, se pueda llegar a ser un problema importante. Apenas sea sensible a este desafío. Afortunadamente, existen alternativas en la validación en el cliente que veremos más adelante. Por ahora, usted tiene otro tipo de validaciones que se pueden realizar mediante el uso de este servidor automático de validación. Después de comprender cómo funciona el proceso en general, usted necesita aprender acerca de las otras directivas. Además de la validación _REQUIRED, varios más proporcionan algunas de las convalidaciones simples que hemos indicado anteriormente en este artículo. Tan sencillo como estas opciones pueden aparecer, tiene que ser consciente de algunas cuestiones para la mayoría de ellos. Muchas de estas cuestiones giran en torno al hecho de que, además de simplemente validar los datos introducidos, el proceso de validación también cambia los datos, en algunos casos antes de que pase a la página de acción-y en formas que puede no ser obvio, ni se espera, como la lista siguiente se describe: _integer: Si el número introducido por el usuario contiene comas o signos de dólar, estos personajes se quitan para la validación y no se transmiten a la página de acción. La documentación también dice que redondea el número introducido si incluye valores decimales, pero en realidad, simplemente se trunca ellos. _float: Quita comas y signos de dólar la misma manera que _integer hace, sino también convierte el número (tal como se presenta en la página de acción) para que tenga seis lugares después de la coma, lleno de ceros. _range: Espera que el rango de valores que se especifican en el atributo de valor como min = max = xxx yyy, separados por un espacio. También se abordan los números de la misma que se _float (que permite la conversión de valores decimales y el número para que tenga derecho de los seis lugares decimales, así como la eliminación de comas y signos de dólar). _range También puede especificar sólo un límite. (Sin embargo, debe colocar un espacio después del número, como en el min = 5. No puede min state = 5, sin espacio, por lo menos antes de la versión 5, ya que al hacerlo podría causar un error grave.) Por último, debido a que el rango se especifica en el atributo de valor, no puede ofrecer un mensaje personalizado para un rango de validación falló. _fecha: Acepta una amplia gama de formatos, tales como 12/2/01, 12/2/2001, e incluso 12-2-01, 12 / 2, 2 de diciembre, 2 de diciembre, y así sucesivamente. Más importante aún, convierte a la fecha consignada en un formato de fecha de ODBC: 12/13/01 se convierte en (d '2001-12-13 '). Esto está bien si usted es almacenar el valor en una base de datos ODBC (ya que le ahorra la necesidad de convertir la fecha en dicho formato), pero si es necesario para la visualización de una página de la acción (o almacenada en una base de datos ODBC) , es necesario realizar la conversión. Ser conscientes de la DateFormat () función, que está disponible para su uso para convertir la nueva versión de nuevo a un formato de fecha regular. Si el año que queda fuera de una fecha, esta directiva supone el año en curso. Si sólo un número único que se consignan, sin embargo (tal vez en la intención de una fecha en el mes en curso), no funciona en absoluto. Este número único es rechazada en una fecha no válida. _fecha Europea no acepta las fechas de formato (día antes de mes), si es la única manera de que la fecha podría ser válida: 13/12/01, por lo tanto, se acepta y se convierte en (d '2013-12-01 '). Aun así, con la opción _eurodate es preferible a la utilización de _fecha sólo si sus usuarios están entrando en sus fechas en el formato europeo. Curiosamente, si el valor ingresado es o no una fecha válida (13/13/13) o no una fecha a todos los (x), el mensaje predeterminado para ambos es simple: El valor especificado para el campo FormField ( 'value') es no el formato correcto. En realidad no transmitir que debe ser una fecha, y mucho menos una válida. Esto sugiere que realmente debería proporcionar un mensaje personalizado. _eurodate: Acciones de todas las facetas de _fecha. La única diferencia es que el formato por defecto es esperar la orden europea de día, seguido del mes (y, opcionalmente, año). _time: Como se _fecha, esta directiva no sólo valida el tiempo, sino también lo convierte a un formato de hora de ODBC: 1:12 se convierte en (t '01: 12:00 '). Al igual que con _fecha, esta conversión está bien si usted está almacenando los datos en una base de datos ODBC (como se le ahorra la necesidad de convertir a ese formato), pero si es necesario para la visualización de una página de acción (o se almacena en una no base de datos ODBC), usted necesita para convertir de nuevo utilizando el TimeFormat disponible () la función. _time acepta un / am / pm y p / h / h durante un período de designación. Si la designación se dejó, que asume mañana. También puede introducir sólo una hora y un designador período, como las 10, lo que supone esa hora (10:00:00). Si sólo un número único que se consignan, sin un designador período, sin embargo, tal vez porque el usuario tiene la intención de significar un tiempo en la mañana, ese valor es rechazada por una hora no válida. Curiosamente, si se introduce una fecha, se acepta, pero las coberteras con el valor (t '00: 00:00 '), el sentido de la medianoche. (Este resultado puede ser lógico, pero no es probable esperado por la mayoría de los desarrolladores.) Algunos otros temas generales que se aplican a uno o más de estas validaciones de lado del servidor, ya que la lista siguiente se describen: Como se demuestra en los ejemplos anteriores en el artículo, donde se valida tanto el nombre de usuario y los campos de contraseña, puede, por supuesto, validar más de un campo a la vez en un formulario. Usted simplemente agregar una etiqueta de campo oculto para cada campo que desea validar. El mensaje de error que se muestra refleja todos los errores de validación que se producen. También puede especificar más de una validación por campo. Para indicar que un campo de edad es a la vez necesaria y debe ser un número entero, por ejemplo, sólo tiene que crear dos etiquetas ocultas campo denominado age_required y age_integer, respectivamente. Adición de una regla de validación a un campo no lo convierte en un campo obligatorio. Es necesario agregar un campo oculto _REQUIRED separado si desea asegurar el acceso de los usuarios. Usted puede estar preocupado por el efecto en el servidor de tiempo de procesamiento de lado si es siempre llevar a cabo esta validación. Cualquier pérdida de tiempo es insignificante, en realidad, en comparación con el rendimiento más importantes de drenaje facetas. Usted se enfrentan a una cuestión lamentable, sin embargo, que siempre deben ser conscientes de: las páginas de acción CF mirar siempre una forma para determinar si contiene campos que termina con los sufijos. Además, a continuación, elimina los campos de la lista de campos que se emplean en las etiquetas de la base de datos de actualización CFINSERT y CFUPDATE. Esto podría causar un problema si usted tiene por ejemplo un campo en su base de datos como Joined_Date (es decir, la fecha en que un usuario se unió a su servicio) . CF podría ver ningún campo de formulario que contiene (nombre Joined_Date) como una validación de un "unido" sobre el terreno. Lo que es peor, porque entonces sería eliminar ese campo Joined_Date antes de la transformación CFINSERT o CFUPDATE, es posible que la columna nunca es insertada / actualizada. Una vez más, acaba de ser conscientes de la cuestión. Es a menudo una fuente de muy difícil de resolver errores. Así que eso es un resumen rápido del servidor automático de validación. Es una característica que tiene sus pros y sus contras. Sin embargo, una preocupación primordial debería ser que, debido a la validación del lado del servidor al usuario que las fuerzas de seguridad para corregir cualquier error, realmente no debe ser utilizado si el formulario le pide al usuario por más de un par campos de entrada. (Y más adelante que la mano de código de validación Serverside se utiliza para otros fines por completo.) Por el contrario, si es necesario para validar varios campos de formulario, puede proporcionar una experiencia de usuario mucho mejor mediante la validación del cliente, y las funciones automáticas en CF dejar muy fácil de hacer, incluso si usted no sabe de JavaScript. un artículo presentado por Jill Babcoff Descargo de responsabilidad:Nuestro sitio web no es responsable por el contenido de este artículo. Webarticles es un recurso de información gratuito. Importante: Este artículo "Mejorar el mensaje de error" fue traducida por un software automático. Sentimos pena por los errores de ortografía que pueda haber ocurrido. Gracias por su comprensión.
|
|||||
| Online: 320 users browsing the articles directory |
|
|