-4

既存のデータベース エンティティに対して 2 つのフォーム要素の内容を確認しようとしています。いずれかが異なる場合は条件付きオプションを実行しますが、以下が機能していないように見えるため、いくつかの問題が発生しています。私は何か間違ったことをしていますか?

<cfquery name="qLiveService" datasource="#application.datasource#">
 SELECT broadcastPackage, AdditonalDVDs 
 FROM dbo.tributes
 WHERE profileID = 122>
</cfquery>   



<cfif qLiveService.broadcastPackage is form.broadcastPackage and qLiveService.AdditonalDVDs is form.AdditonalDVDs >

<!--- do something -->

<cfelse>


<!--- of one was different now run the code in this area -->

</cfif>
4

2 に答える 2

1
     WHERE profileID = 122>

>122 の後の余分な部分を削除します

変数を引用符 " で囲んでいる場合は、シャープ # 記号を追加して、値が確実に評価されるようにする必要があります。例:

<cfset a = "bob">
<cfset b = "bob">
<cfset x = 5>
<cfset y = 5>
<cfif ( a is "#b#" ) and ( x is "#y#" )>
    Equal
<cfelse>
    Not Equal
</cfif>

引用符を使用しない場合、ポンド記号は必要ありません。

<cfif ( a is b ) and ( x is y )>
    Equal
<cfelse>
    Not Equal
</cfif>

<cfset上記のように、変数を試すこともできます。

于 2012-04-25T17:54:59.450 に答える
-2

クエリ "WHERE profileID = 122" の where 条件と if 条件を修正

<cfoutput>
<cfif #qLiveService.broadcastPackage# eq #val(form.broadcastPackage)# and   #qLiveService.AdditonalDVDs# is #val(form.AdditonalDVDs)# >
  Equal
    <cfelse>
Not Equal
</cfif>
</cfoutput>
于 2013-02-20T05:09:12.420 に答える