Как я могу получить параметр URL и Значение в Coldfusion?

начинать-расшифровка-стенограммы . Это выпишет Вашу всю сессию к текстовому файлу. Большой для учебных новых наймов о том, как использовать Powershell в среде.

7
задан Sergii 14 December 2009 в 23:27
поделиться

5 ответов

   <cfset Param2 = ListGetAt(CGI.QUERY_STRING,2,"&")>
5
ответ дан 6 December 2019 в 05:38
поделиться

Order of query string variables is not relevant, or your app shouldnt expect it to be relevant. I think your best bet is to have another variable which is a list of the variables in the order. Like so:

test.cfm?par1=val1&par2=val2&par3=val3&list=var1,var2,var3

Notice the presence of the new variable "list".

So you first grab the value of "list" and then takes it 2nd entry "var2" and reference that in the URL scope. You could easily abstract all of this so the names of the variables themselves dont matter. Good error handling will be necessary to guard against missing expectations.

5
ответ дан 6 December 2019 в 05:38
поделиться

Вы также можете получить доступ к области url как структуру, так что вы можете получить:

<cfset param2 = url['param2'] />

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

email1=foo@bar.com&name1=Fred&email2=xxx@yyy.com&name2=Sally

Вы можете написать что-то вроде:

<cfloop condition="someCondition">
    <cfset email = url['email' & i] />
    <cfset name = url['name' & i] />
    <!--- Do something --->
    <cfset i++ />
</cfloop>
20
ответ дан 6 December 2019 в 05:38
поделиться
<cfscript>
    par2=getToken(cgi.query_string,2,"&"); // contains "par2=val2"
    par2name=getToken(par2,1,"="); // contains "par2"
    par2value=urlDecode(getToken(par2,2,"=")); // contains "val2"
</cfscript>

Вы также можете использовать функцию listGetAt, которая в основном эквивалентна getToken, с немного другим синтаксисом.

1
ответ дан 6 December 2019 в 05:38
поделиться

для получения списка параметров можно использовать structKeyList(url) или structKeyArray(url), а затем получить доступ к этим параметрам через область видимости url типа #url['par1']#

<cfset params = structKeyList(url) />
<cfdump label="parameters" var="#params#" />

<cfloop index="ix" list="#params#">
    <cfoutput><div>#ix# = #url[ix]#</div></cfoutput>
</cfloop>

, как уже упоминали другие, не стоит полагаться на порядок параметров

.
3
ответ дан 6 December 2019 в 05:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: