Я использую следующий метод, чтобы гарантировать, что любые параметры столбца сортировки, поступающие от клиента, проходят через функцию ListFindNoCase ():
<cfif ListFindNoCase("date,score", params.order) EQ 0>
<cfset params.order = "date">
</cfif>
Таким образом, любой запрос столбца сортировки проверяется перед значениями списка доотправляется на сервер.Затем я добавил следующий код в свою функцию:
<cfswitch expression="#params.order#">
<cfcase value="date">
<cfset params.order = "date DESC">
</cfcase>
<cfcase value="score">
<cfset params.order = "score ASC">
</cfcase>
<cfdefaultcase>
<cfset params.order = "date DESC">
</cfdefaultcase>
</cfswitch>
Поскольку регистр по умолчанию всегда устанавливает порядок на «дату DESC», если выражение не соответствует первым двум случаям, разве это не отображает ListCaseNoFind ()избыточный?
Я хотел убедиться, что это так, прежде чем удалить функцию ListFindNoCase ()!