【发布时间】:2016-07-24 05:02:47
【问题描述】:
我在名为 p1、p2、p3 等的数据库中有几个字段,它们由名为 GetUser 的查询返回。我想检查它们的值,但下面的代码错误出现在我身上。我确定我的格式“GetUser.p#x#”是错误的,但我不知道该怎么做。任何帮助将不胜感激。
我有以下代码,它可以工作...
<cfquery name="GetUser">
SELECT id, p00, p01, p02, p03, p04, p05, p06
FROM users
where id = #session.user_id#
</cfquery>
<cfoutput query="GetUser">
<cfif p01 is 1><li>Post 01</li></cfif>
<cfif p02 is 1><li>Post 02</li></cfif>
<cfif p03 is 1><li>Post 03</li></cfif>
<cfif p04 is 1><li>Post 04</li></cfif>
<cfif p05 is 1><li>Post 05</li></cfif>
<cfif p06 is 1><li>Post 06</li></cfif>
</cfoutput>
当然,这是一种糟糕的做法,所以我想做一个如下的循环来达到相同的结果:
<cfloop index = "x" from = "1" to = "6">
<cfif GetUser.p0#x# is 1><li>Post #x#</li></cfif>
</cfloop>
Bt 这个错误了。所以我希望了解如何实现这一目标。
// 有一个类似的问题建议queryName["columnName"][rowNumber] 是必填项。这是不同的,而且更简单。
【问题讨论】:
-
getUser['p0' +x]是查询中动态变量的语法。 -
应该说“来自您的查询”
-
关闭,但不完全。
导致错误:无法将 [p0] 字符串转换为数值。- Post 0#x#
-
sorrysorry,最近java太多了。应该是 & 而不是 +
标签: coldfusion cfml railo lucee