У меня есть cfc, где функция возвращает запрос со списком сотрудников, который отображается в таблице. У меня есть форма сортировки на странице, где onclick заголовка столбца данные должны сортироваться на основе того, какой столбец кликается. Теперь у меня было все это, пока все запросы были на самой странице. Я пытаюсь переместить запросы в cfc сейчас. Я уверен, что у меня что-то не хватает. Может ли кто-нибудь указать мне, как получить отсортированную по результатам cfc onclick заголовка столбца?Значение формы передачи для cfc
<script>
function submitformnow(x){
if (document.form.show.value == "DESC")
{$('input[name=show]').val('ASC');}
else{ $('input[name=show]').val('DESC');}
$('input[name=order_by]').val(x);
document.form.submit();
}
</script>
<cffunction name="getemps" access="public" output="false" returntype="query">
<cfargument name="emp_id" type="numeric" default="#variables.emp_id#" />
<cfargument name="order_by" default="#variables.order_by#" type="string" required="no">
<cfargument name="show" default="#variables.show#" type="string" required="no">
<cfquery name="qemps" datasource="test">
select * from emps
<cfif len(trim(arguments.order_by)) and arguments.order_by NEQ '' and len(trim(arguments.show)) and arguments.show NEQ '' >
ORDER BY #arguments.order_by# #arguments.show#
</cfif>
</cfquery>
</cffunction>
<cfset employee= new cfcs.employees() />
<cfset getemps = employee.getemps(emp_id,order_by,show) />//order_by, show are the form field here//
То, что вы ищете, вероятно, лучше обрабатывается через передний конец инструмента, как DataTables http://datatables.net/ – rodmunera
Что означает ''
Вы должны проверить 'arguments.order_by' и' arguments.show' в своем запросе. Как и было, он был бы уязвим для SQL-инъекций, поскольку они передаются прямо из формы. – beloitdavisja