Coldfusion CF(如果……车头位置)?

Coldfusion CF(如果……车头位置)?,coldfusion,Coldfusion,我正在尝试生成一个CF代码,用于从表中选择行welcome 用户名=session.username的用户 如果welcome=1,那么我希望它将用户指向/me/index.cfm 我是CF的新手,这怎么可能呢。你可以这样写: <cfif welcome EQ 1> <cflocation url="/me/index.cfm"> </cfif> 你可以这样写: <cfif welcome EQ 1> <cflocation url="/m

我正在尝试生成一个CF代码,用于从表中选择行welcome 用户名=session.username的用户

如果welcome=1,那么我希望它将用户指向/me/index.cfm

我是CF的新手,这怎么可能呢。

你可以这样写:

<cfif welcome EQ 1>
<cflocation url="/me/index.cfm">
</cfif>
你可以这样写:

<cfif welcome EQ 1>
<cflocation url="/me/index.cfm">
</cfif>

首先,您需要根据数据库的声音进行数据库查询:

<cfquery name="getWelcome" datasource="yourDSN">
  SELECT welcome
  FROM users
  WHERE username = <cfqueryparam value="#session.username#" cfsqltype="CF_SQL_VARCHAR"> 
</cfquery>
然后,您需要检查查询中的值,并考虑到查询可能根本找不到任何内容这一事实

<cfif NOT getWelcome.recordcount>
<!--- do something, maybe redirect to the login page --->

</cfif>

<cfif getWelcome.welcome EQ 1>
  <cflocation url="/me/index.cfm">
</cfif>

这里最重要的是使用cfqueryparam来防止SQL注入。

首先,您需要通过声音执行DB查询:

<cfquery name="getWelcome" datasource="yourDSN">
  SELECT welcome
  FROM users
  WHERE username = <cfqueryparam value="#session.username#" cfsqltype="CF_SQL_VARCHAR"> 
</cfquery>
然后,您需要检查查询中的值,并考虑到查询可能根本找不到任何内容这一事实

<cfif NOT getWelcome.recordcount>
<!--- do something, maybe redirect to the login page --->

</cfif>

<cfif getWelcome.welcome EQ 1>
  <cflocation url="/me/index.cfm">
</cfif>

这里最重要的是使用cfqueryparam来防止SQL注入。

@Brooke-请注意,上面的示例非常好,但它假设查询getWelcome只返回1行。这是需要记住的。表示if getWelcom.welcome EQ 1只分析返回的查询的第一行的代码。如果有多行,则忽略其余行。我意识到您的查询可能只设计了一行,所以这很酷。我只是指出来说得好。我希望用户名在users表中是唯一的@请注意,上面的示例非常好,但是它假设查询getWelcome只返回1行。这是需要记住的。表示if getWelcom.welcome EQ 1只分析返回的查询的第一行的代码。如果有多行,则忽略其余行。我意识到您的查询可能只设计了一行,所以这很酷。我只是指出来说得好。我希望用户名在users表中是唯一的“template”不是cflocation标记的属性“template”不是cflocation标记的属性因为您在标题中提到了标题,我要指出的是,虽然处理位置标题,但您始终使用通用HTTP标题,例如,CF8添加了将状态代码设置为标记属性的功能,因为您在标题中提到了标题,我要指出,在处理位置标题时,您总是使用通用HTTP标题,例如,CF8添加了将状态代码设置为标记属性的功能