2012-08-10 3 views
0

테이블에서 필드를 가져 와서 결과가 무엇인지에 따라 다른 작업을 수행하고 있습니다.ASP 코드가 SQL 필드를 올바르게 읽지 못합니다.

다음
The field is: y 

가, 나중에, 내가 If 문이 :

<% ElseIf result ="y" or Session("customer_id") <> "" Then 
Do Something 
%> 

을하지만이의 ElseIf 문에 무엇을 실행 결코 여기에 내 코드

<%stringA ="Select field From table Where something=1" 
set response = connFW.Execute(stringA) 
set result = response ("field") 
If result ="y" Then 
Response.Write("The field is: " & result) 
End If%> 

그것은이 출력입니다! 그것은 페이지의 맨 위에 올바른 결과를 주었다고 말합니다! 내가 놓친 게 있니?

참고 : 혼동을 피하기 위해,이 코드는 페이지의 상단에 : 당신이 어딘가에 몇 가지 코드를 떠나는 경우가 아니라면

Set connFW = Server.CreateObject("ADODB.Connection") 
connFW.ConnectionTimeout = Application("FW_ConnectionTimeout") 
connFW.CommandTimeout = Application("FW_CommandTimeout") 
connFW.Open Application("FW_ConnectionString") 
+0

ElseIf에 처음으로 만족되는 결과 result = "y"가있는 경우 If 컨트롤이이 줄에 어떻게 올까요? 그래서 ElseIf에 그냥 Session ("consumer_id") <> ""을 넣거나 If 블록에 넣으십시오. – Ravia

답변

1

완전한 코드를 보지 않고서는 정확한 문제가 어디 있는지 알기가 어렵지만 두 가지 가능성이 있습니다. 어느 쪽이든 당신은 당신의 ElseIf을 변경해야하는 경우에는 그 자체에 "의 ElseIf"를 가지고 그냥 일반 경우 :

만약 결과 = "Y"또는 세션 다음 ("CUSTOMER_ID") <> ""

... 이후 당신은 당신의 ElseIf를 배치하는 이전 하나

If result ="y" Then 
    Response.Write("The field is: " & result) 
ElseIf result ="y" or Session("customer_id") <> "" Then 
    Do Something 
End If 

는 후자의 경우 결과 = "Y"조건이 이미 이전에 충족되어 있기 때문에, 다음의 ElseIf가 실행되지 않습니다 If 문.

1

귀하의 ElseIf 문이, 선행하는 if 문이 표시되지 않습니다.

당신이 필요합니다

If x Then 
    Do something 
ElseIf y Then 
    Do something else 
End If 

당신의 ElseIf 그냥 자신에 떨어져 앉아있을 수 없습니다.

관련 문제