如何在Coldfusion中获取URL参数和值?对于Ex: -
我的网址是
test.cfm?par1=val1&par2=val2&par3=val3
Run Code Online (Sandbox Code Playgroud)
是否可以直接获取第二个参数及其值?
与<cfset param='#url.par2#'>我能得到PAR2的价值,但我的参数dynamicically从其他网页产生并传递到这里(PAR2可能是下一次ABC2,XYZ2等.)所以,我认为更好的办法是让在第二Possition的参数和值( Possition总是不会改变).
任何想法我怎样才能得到它?
提前致谢
Bia*_*cki 20
您还可以url作为结构访问范围,因此您可以获得:
<cfset param2 = url['param2'] />
Run Code Online (Sandbox Code Playgroud)
如果您可能具有一组字段的命名约定,这将非常有用.假设您正在收集名称和电子邮件,如下所示:
email1=foo@bar.com&name1=Fred&email2=xxx@yyy.com&name2=Sally
Run Code Online (Sandbox Code Playgroud)
你可以这样写:
<cfloop condition="someCondition">
<cfset email = url['email' & i] />
<cfset name = url['name' & i] />
<!--- Do something --->
<cfset i++ />
</cfloop>
Run Code Online (Sandbox Code Playgroud)
查询字符串变量的顺序不相关,或者您的应用程序不应该期望它是相关的.我认为最好的办法是让另一个变量成为订单中变量的列表.像这样:
test.cfm?par1=val1&par2=val2&par3=val3&list=var1,var2,var3
Run Code Online (Sandbox Code Playgroud)
注意新变量"list"的存在.
因此,您首先获取"list"的值,然后获取第二个条目"var2"并在URL范围中引用它.您可以轻松地抽象所有这些,因此变量的名称本身并不重要.为了防止错过预期,必须进行良好的错误处理.
<cfset Param2 = ListGetAt(CGI.QUERY_STRING,2,"&")>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
37093 次 |
| 最近记录: |