Сравнение строк холодного синтеза - PullRequest
4 голосов
/ 28 сентября 2010

У меня есть форма, которая возвращает такой список при отправке:

2009,9

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

<cfif #FORM.month# eq #qGetDates.year#,#qGetDates.month#>

Я знаю, что мне, вероятно, придется привести его или преобразовать в строку, чтобы сравнение работало. Как мне это сделать?

Спасибо

R.

Ответы [ 3 ]

13 голосов
/ 28 сентября 2010
<cfif FORM.month eq "#qGetDates.year#,#qGetDates.month#">

или

<cfif compare(FORM.month, "#qGetDates.year#,#qGetDates.month#") EQ 0>
2 голосов
/ 28 сентября 2010

Вы злоупотребляете #. Если переменные не находятся внутри кавычек или блока cfoutput, вы не используете # как общее правило.

Другое правило: Вы должны использовать кавычки вокруг строк (в этом случае запятую). Вы также можете включить переменные в свои строки с помощью приведенного выше правила (используйте #), как показано в примере Генри.

<cfif #FORM.month# eq #qGetDates.year#,#qGetDates.month#>

должен быть удален #, а запятая требует конкатенации строки

<cfif FORM.month eq qGetDates.year & "," & qGetDates.month>

Или, как сказал Генри

1 голос
/ 28 сентября 2010

Если вы хотите получить второе значение (значение после первой запятой), тогда

<cfset x = "2009,7">
<cfoutput>
    #listGetAt(x,2)#
</cfoutput>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...