2

我确定这很简单,但我似乎无法正确

在 ColdFusion 中,我加密了一个查询字符串,然后CGI.Query_String很容易地解密了这个值。然后我有一个看起来像查询字符串的字符串。但我需要像通常使用URL.符号(例如)一样引用查询字符串值。我该怎么做呢?

我已经尝试了下面的代码,但似乎无法解析结构中的值:

<cfscript>
    myStruct = structNew();
    for(i=1; i LTE listLen(decrypted,'&');i=i+1) {
        structInsert(myStruct, i, listGetAt(decrypted,i,'&'));
    }
</cfscript>

任何帮助表示赞赏。

更新:(如果我不清楚,请提供更多信息)

我正在CFLOCATION使用加密的查询字符串发送数据。只是为了向用户隐藏一些不相关的信息。我想要做的是在解密后使用查询字符串信息。但是我不能再使用 ColdFusionURL结构了。所以我问我如何解析解密字符串中的信息,以便我可以使用它(例如,在 SQL 查询的 where 子句中或只是显示在页面上)。

说我的解密字符串是update=0&balance=1145.00

我该如何使用类似的东西<cfoutput>#update#</cfoutput>

4

1 回答 1

1

如果str是您的查询字符串:

<CFSET str = "asdf=1&asd&as=3" />

<CFSET mystruct = structnew() />
<CFLOOP list="#str#" delimiters="&" index="i">
    <CFSET key = listfirst(i,"=") />
    <CFIF listlen(i,"=") GT 1>
        <CFSET value = listlast(i,"=") />
    <CFELSE>
        <CFSET value = "" />
    </CFIF>
    <CFSET mystruct[key] = value />
</CFLOOP>
于 2012-06-25T12:41:35.380 回答