我从存储过程返回2个结果并尝试显示徽标,如果其中一个有徽章2。他们有一个值为1和2的徽章ID列。我正在尝试这样做但它赢了工作:
<cfif qBadges.badgeid EQ 2>
logo here
</cfif>
如果我将其更改为1,则会显示旧徽标。 2是我刚添加的新徽标。谢谢!
修改
<cfstoredproc procedure="sel_MemberBadges_p" datasource="DSN">
<cfprocparam type="In" cfsqltype="CF_SQL_INTEGER" value="#ID#">
<cfprocresult name="qBadges">
</cfstoredproc>
<cfif qBadges.badgeid EQ 2>
new logo here
<cfelseif qBadges.badgeid EQ 1>
old logo
</cfif>
答案 0 :(得分:3)
这样做
<cfif qBadges.badgeid[1] EQ 2>
new logo here
<cfelseif qBadges.badgeid[2] EQ 1>
old logo
</cfif>
这是因为除非你指定你想要的行,否则它将返回第一行。
答案 1 :(得分:0)
尝试转储结果,以便您可以看到徽章ID值:
<cfstoredproc procedure="sel_MemberBadges_p" datasource="DSN">
<cfprocparam type="In" cfsqltype="CF_SQL_INTEGER" value="#ID#">
<cfprocresult name="qBadges">
</cfstoredproc>
<cfdump var="#qBadges#" />
<cfabort />
<cfif qBadges.badgeid EQ 2>
new logo here
<cfelseif qBadges.badgeid EQ 1>
old logo
</cfif>