Создание общей функции проверки на стороне сервера в Coldfusion - PullRequest
0 голосов
/ 11 июля 2011

Итак, я пытался очистить свой код и научиться тому, что я всегда должен делать ... ну, конечно, проверка на стороне сервера - это одна из тех вещей, которые я всегда должен делать. Тем не менее, что происходит, когда у меня есть эта огромная форма? Я действительно хотел бы иметь универсальную функцию, которая позволяет мне передавать тип данных и имя поля. Есть ли безопасный способ сделать это в Coldfusion?

Я уже давно занимаюсь этим, но я зашел в тупик и не могу найти информацию о том, как сделать что-то подобное в Интернете. Кажется, что Coldfusion не предлагает эту способность.

Однако, я думаю, было бы здорово, если бы был способ указать атрибут в ваших входных тегах, который имел тип данных поля. Тогда было бы очень хорошо, если бы Coldfusion поместил его в структуру с вашими именами полей.

Есть ли способ сделать это или кто-то может разработать наиболее эффективный способ проверки на стороне сервера?

Ответы [ 2 ]

2 голосов
/ 11 июля 2011

Было бы здорово, если бы у CF было что-то подобное! Хорошие новости, это, в течение многих лет! :)

Вы ищете тег cfinputcfform). Этот тег включает в себя особенности проверки прямо в теге так, как вам нужно (великие умы думают одинаково, верно?). Вы можете указать валидацию, сообщение об ошибке, если оно должно проверять клиентскую или серверную сторону - все виды хитрых трюков.

Проверьте здесь для реализации - это довольно легко использовать:

http://livedocs.adobe.com/coldfusion/8/htmldocs/help.html?content=Tags_i_07.html

Имейте в виду, что многие дива ненавидят код cfform / cfinput. На самом деле, нет ничего плохого в том, что они реализованы правильно. Им можно злоупотреблять и оно не подходит для каждого решения, но это верно для всего, что есть в наборе инструментов. По большому счету, для большинства ситуаций ввода и проверки формы это прекрасно работает.

Если вы ненавидите эту идею, другой способ - использовать встроенный атрибут типа cfparam и ловить ваши ошибки.

Например, в верхней части страницы обработки формы вы можете:

<cfparam name="form.cardNumber" type="creditcard">

Когда это достигается, если значение в этой переменной не относится к этому типу, оно выдаст исключение, которое вы можете перехватить. Это избавляет вас от необходимости писать if () и сопоставление с образцом. Кроме того, если встроенный тип отсутствует, вы можете указать регулярное выражение для сопоставления с образцом.

Вот еще немного информации и поддерживаемых типов: http://livedocs.adobe.com/coldfusion/8/htmldocs/help.html?content=Tags_p-q_01.html

Дайте мне знать, что вы думаете!

1 голос
/ 12 июля 2011

Я бы посоветовал вам рассмотреть возможность использования среды ColdFusion, такой как CFWheels (или ColdBox), в которой уже встроены многие функции этого типа, чтобы упростить разработку в TON. Использование CFWheels было одним из лучших решений, которые я принял как разработчик, и мои навыки разработки значительно выросли за последний год. Есть несколько отличных онлайн-трансляций для начала. http://cfwheels.org/screencasts

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...