Help, please with this error: Incorrect syntax near '='

Discussion in 'C#' started by chrisj, Feb 24, 2008.

  1. #1
    Could you please help me with this error? thanks

    Microsoft OLE DB Provider for SQL Server error '80040e14' 
    Line 1: Incorrect syntax near '='. 
    /home/register_2.asp, line 80
    Code (markup):
    (line 80 is: RS.Open SQL, MyConn)


    These are lines 76 thru 92:
    
    SQL = "SELECT fldSINCE, fldEXPIRES, fldUNIT FROM mms_tbl_user WHERE ID = " & Session("PMMS_ID")
    				
    Set RS = Server.CreateObject("ADODB.Recordset")
    	RS.LockType   = 1
    	RS.CursorType = 0
    	RS.Open SQL, MyConn
    IF NOT RS.EOF THEN
    USER_SINCE = trim(RS("fldSINCE"))
    USER_EXP   = trim(RS("fldEXPIRES"))
    USER_UNIT  = trim(RS("fldUNIT"))
    END IF
    RS.Close
    Set RS = Nothing
    
    MyConn.Close
    Set MyConn = Nothing
    
    END IF
    Code (markup):

     
    chrisj, Feb 24, 2008 IP
  2. Free Born John

    Free Born John Guest

    Messages:
    111
    Likes Received:
    4
    Best Answers:
    0
    Trophy Points:
    0
    #2
    add:

    response.write(sql)
    response.end

    before line 80.

    Should be obvious then
     
    Free Born John, Feb 25, 2008 IP
  3. chrisj

    chrisj Well-Known Member

    Messages:
    606
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    101
    #3
    Thanks for your reply and suggestion.

    I added:

    response.write(sql)
    response.end

    before line 80

    and this is what shows instead of the error:

    SELECT fldSINCE, fldEXPIRES, fldUNIT FROM mms_tbl_user WHERE ID =

    I don't know what to do next with this information. Can you help me please?
    Thanks
     
    chrisj, Feb 25, 2008 IP
  4. AstarothSolutions

    AstarothSolutions Peon

    Messages:
    2,680
    Likes Received:
    77
    Best Answers:
    0
    Trophy Points:
    0
    #4
    Looks like Session("PMMS_ID") doesnt hold a value hence the error
     
    AstarothSolutions, Feb 25, 2008 IP
  5. chrisj

    chrisj Well-Known Member

    Messages:
    606
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    101
    #5
    Thanks for your reply. I'm wondering if this variable is set in another file, like this login file. Can someone look it over and tell me if this is true?

    thanks again.


    <!--#include file="inc_header.asp"-->
        <!--#include file="app_config.asp"-->
        <!--#include file="inc_api.asp"-->
    
        <%Dim sMODE, sUSERNAME, sPASSWORD, sMESSAGE, sRS, sSQL, sID, sSINCE, sEXPIRES, sNAME, sREM, sREF, sLOGOUT, _
    		  sVALID, sACTIVE, sMEM_RED, GROUP_REDIR, strG_IDS, blSTEP_TWO, ADD_MSG
    		  		  
        
        ' COLLECT FORM INPUT
    	
    	With Request
    	    sMODE   = APO(.Form("mode"))
    	    sLOGOUT = APO(.QueryString("logout"))
    	End With
               
        ' LOGOUT IF REQUESTED
    	
        IF sLOGOUT = "True" THEN    
    
            Call OPEN_DB()    
            Call RETURN_VALUE(False)
    		
            IF Session("PMMS_IN") = "True" THEN
                Call APPEND_LOG(False, Session("PMMS_ID"), "Logs out.", Trim(sysVAL(7)))
            END IF
    		
    		MyConn.close     
            Set MyConn = Nothing		
    		
    		Session.Abandon        
           
            Response.Redirect LOG_OUT_URL
            Response.end
    		
        END IF    
    	
    	' PROCESS LOGIN
        
        IF sMODE = "login" THEN      
          
            With Request
                sUSERNAME = APO(.Form("username"))
                sPASSWORD = APO(.Form("password"))
                sREM      = Trim(.Form("rem"))
                sREF      = STRIP_CODE(APO(.Form("ref_page")))
            End With
                           
            Call CHECK_INPUT()
            
            IF sMESSAGE = "" THEN     
                   
                Call OPEN_DB()
                Call RETURN_VALUE(False)
    			
    			ADD_MSG = " You can contact us at <a href='mailto:" & sysVAL(12) & "'>" & sysVAL(12) & "</a> if you have any questions.<br>"
    			
    			IF sysVAL(21) = "1" THEN sMESSAGE = "Sorry, the member login has been temporarily disabled. Please try again later." & ADD_MSG
    			
                SQL = "SELECT ID, fldSINCE, fldEXPIRES, fldNAME, fldVALID, fldCHAR, fldACTIVE, fldSTATUS, fldREDIRECT FROM mms_tbl_user WHERE (fldUSERNAME='" & sUSERNAME & "') AND (fldPASSWORD='" & sPASSWORD & "')"
                Set sRS = Server.CreateObject("ADODB.Recordset")
                sRS.Open SQL, MyConn	
                	 IF NOT sRS.EOF THEN                 
                	 	sID      = trim(sRS("ID"))
                        sSINCE   = trim(sRS("fldSINCE"))
                        sEXPIRES = trim(sRS("fldEXPIRES"))
                        sNAME    = trim(sRS("fldNAME"))
                        sVALID   = trim(sRS("fldVALID"))                    
                        sACTIVE  = trim(sRS("fldACTIVE"))
                        sSTATUS  = trim(sRS("fldSTATUS"))
    					sMEM_RED = trim(sRS("fldREDIRECT"))
                     ELSE
                        sMESSAGE = sMESSAGE & "<li />This is not a currently valid username and password combination."
                	 END IF
                sRS.Close 
                Set sRS = Nothing
    			
                   IF sMESSAGE = "" THEN			   
    			   
                       IF sMESSAGE = "" THEN IF NOT (sSTATUS = Trim(drpSTATUS(0)) OR sSTATUS = Trim(drpSTATUS(5)) OR sSTATUS = Trim(drpSTATUS(3))) THEN sMESSAGE = sMESSAGE & "<li />Sorry, your status is <i>" & sSTATUS & "</i>." & ADD_MSG
                       IF sSTATUS = Trim(drpSTATUS(3)) THEN 
                       		Session( "sUSER_ID" )		= sID
                       		Session("PMMS_USERNAME") 	= sUSERNAME
                       		Session("PMMS_NAME")     	= sNAME
                       		Session("PMMS_TEMP_IN") 	= "True"
                       		sMESSAGE = sMESSAGE & "ACCOUNT STATUS: " & sSTATUS & "<br><br>"
                       END IF
    				   IF DateDiff("d", Date(),Cdate(FormatDateTime(CDate(sSINCE),2))+Cdbl(sEXPIRES)) =< 0 THEN sMESSAGE = sMESSAGE & Replace(RETURN_TEMPLATES(False,"fldMSG4",True),"%name%",sNAME)
                                        
    				   IF Trim(sysVAL(1)) = "1" THEN ' Requires user email authentication
                           IF NOT sVALID = "1" THEN 
                               sMESSAGE = sMESSAGE & "<li />You must verify your registration profile via the link emailed to you.<br /> Please click <a href='resend.asp?ID=" & sID & "'><b>here</b></a> to have the validation email resent." & ADD_MSG
                           END IF
                       END IF    
    				               
                       IF Trim(sysVAL(1)) = "3" THEN ' Requires admin authentication
                           IF NOT sVALID = "1" THEN 
                               sMESSAGE = sMESSAGE & "<li />Your profile has not been activated by an administrator, please try again later." & ADD_MSG
                           END IF
                       END IF	
    				   			   
                       IF sMESSAGE = "" THEN IF NOT sACTIVE = "1" THEN sMESSAGE = sMESSAGE & "<li />Sorry, your profile is not active." & ADD_MSG
    				   IF sSTATUS = Cstr(drpSTATUS(5)) THEN blSTEP_TWO = "True"								   
    				   
                                    
                       IF sMESSAGE = "" THEN
    
       						' UPDATE SOME USER INFO
    
    						Call UPDATE_INFO(False, sID, Trim(sysVAL(8)))
    						if blSTEP_TWO = "True" THEN
    							Call APPEND_LOG(False, sID, "Member is asked to make a payment.", Trim(sysVAL(7)))
    						else
    	                    	Call APPEND_LOG(False, sID, "Logs in @ " & APO(Request.ServerVariables("PATH_INFO")), Trim(sysVAL(7)))
    						end if
    	                   							
    						IF MMS_BACKEND = "1" THEN
    	                        SQL = "UPDATE mms_tbl_user SET fldLAST_LOGIN = GetDate() WHERE ID =" & sID
    	                    ELSE
    	                        SQL = "UPDATE mms_tbl_user SET fldLAST_LOGIN = Now() WHERE ID =" & sID
    	                    END IF
    	                   	MyConn.Execute(SQL)
    						
    						' GET GROUP REDIR
    						
    						IF MMS_BACKEND = 3 THEN
    							SQL = "SELECT fldREDIRECT FROM mms_tbl_cate INNER JOIN mms_tbl_user_cate ON mms_tbl_cate.ID = mms_tbl_user_cate.fldCATE_ID WHERE mms_tbl_user_cate.fldUSER_ID = " & sID
    						ELSE
    							SQL = "SELECT TOP 1 fldREDIRECT FROM mms_tbl_cate WHERE ID IN (SELECT TOP 1 fldCATE_ID FROM mms_tbl_user_cate WHERE fldUSER_ID = " & sID & " ORDER BY fldCATE_ID ASC)"
    						END IF
    						Set RS = Server.CreateObject("ADODB.Recordset")
    						RS.Open SQL, MyConn	
    							 IF NOT RS.EOF THEN
    							 	GROUP_REDIR = trim(RS("fldREDIRECT"))
    							 END IF
    						RS.Close 
    						Set RS = Nothing	
    						
    						' GET GROUP ID's
    						
    						SQL = "SELECT fldCATE_ID FROM mms_tbl_user_cate WHERE fldUSER_ID = " & sID & " ORDER BY fldCATE_ID ASC"
    						Set RS = Server.CreateObject("ADODB.Recordset")
    						RS.LockType   = 1
    						RS.CursorType = 0
    						RS.Open SQL, MyConn	
    							 WHILE NOT RS.EOF 
    							 	strG_IDS = strG_IDS & trim(RS("fldCATE_ID")) & ";"
    							    RS.MoveNext
    							 WEND
    						RS.Close 
    						Set RS = Nothing						
    					
                       END IF            
                   END IF
    			   
                MyConn.Close
                Set MyConn = Nothing     
    						
    			' MEMBER IS YET TO PAY, OR HIS ACCOUNT IS SET TO "Unpaid Account"
    			
    			IF blSTEP_TWO = "True" THEN
               		
    				Session.Timeout = 25
               		Session("PMMS_USERNAME") = sUSERNAME
                    Session("PMMS_NAME")     = sNAME
    				Session("PMMS_ID")       = sID				
    				Session("PMMS_TEMP_IN")  = "True"			
    				
                    Response.Redirect "_register_2.asp?M=1"
                    Response.End  				
    				
    			END IF                   
                
                ' SET SESSION VARIABLES FOR THE USER
    			
                IF sMESSAGE = "" THEN    
                    
                    IF sREM = "1" THEN
                        Response.Cookies("USERNAME") = sUSERNAME
                        Response.Cookies("USERNAME").Expires = Date() + 35
                    ELSE
                        Response.Cookies("USERNAME") = ""
                        Response.Cookies("USERNAME").Expires = Date() + 35            
                    END IF
                    
            		Session.Timeout = 25
            		Session("PMMS_USERNAME") = sUSERNAME
                    Session("PMMS_NAME")     = sNAME
            		Session("PMMS_ID")       = sID
    				Session("PMMS_GIDS")     = strG_IDS				
            		Session("PMMS_IN")       = "True"
    				
    				' // HD ADDITION
    				Session("MMS_HD_U") = EnCrypt(sUSERNAME)
    				Session("MMS_HD_P") = EnCrypt(sPASSWORD)
    								
                    
                    ' REDIRECT TO THE REFERING PAGE (or profile.asp if the ref. page is missing)
    				' ( sMEM_RED = Member Redirection ; GROUP_REDIR = Group Redirection)
    				
    				SELECT CASE REDIRECTION_MODE
    					CASE "2" ' [ Member Individual Redirection ]
    						IF NOT (sMEM_RED = "" OR IsNull(sMEM_RED)) THEN
    							sREF = sMEM_RED
    						ELSE
    			                IF sREF = "" Or IsNULL(sREF) THEN 
    			                    sREF = "profile.asp"
    			                ELSE
    			                    sREF = DOMAIN_URL & sREF                
    			                END IF  						
    						END IF
    					CASE "3" ' [ Redirection URL of First Member Assigned Group ]
    						IF NOT (GROUP_REDIR = "" OR IsNull(GROUP_REDIR)) THEN
    							sREF = GROUP_REDIR
    						ELSE
    			                IF sREF = "" Or IsNULL(sREF) THEN 
    			                    sREF = "profile.asp"
    			                ELSE
    			                    sREF = DOMAIN_URL & sREF                
    			                END IF  						
    						END IF					
    					CASE "4" ' [ Member OR Group OR Requested Page Redirection ]
    						IF NOT (sMEM_RED = "" OR IsNull(sMEM_RED)) THEN
    							sREF = sMEM_RED
    						ELSE						
    							IF NOT (GROUP_REDIR = "" OR IsNull(GROUP_REDIR)) THEN
    								sREF = GROUP_REDIR
    							ELSE
    				                IF sREF = "" Or IsNULL(sREF) THEN 
    				                    sREF = "profile.asp"
    				                ELSE
    				                    sREF = DOMAIN_URL & sREF                
    				                END IF  						
    							END IF
    						END IF															
    					CASE ELSE ' [ ORIGINALLY REQUEST PAGE ]						
    		                IF sREF = "" Or IsNULL(sREF) THEN 
    		                    sREF = "profile.asp"
    		                ELSE
    		                    sREF = DOMAIN_URL & sREF                
    		                END IF    					
    				END SELECT
    				
                    
                    Response.Redirect sREF                
                    Response.End      
                              
                END IF ' { IF sMESSAGE = "" THEN }                        
                
                
            END IF ' { IF sMESSAGE = "" THEN }      
    	ELSE
    	
                Call RETURN_VALUE(True)			
    			IF sysVAL(21) = "1" THEN sMESSAGE = "Sorry, the member login has been temporarily disabled. Please try again later." & ADD_MSG
    	  
        END IF ' { IF sMODE = "login" THEN }
    
        ' CHECK THE LOGIN INFO
    	
        PRIVATE SUB CHECK_INPUT()
            IF sUSERNAME = "" OR IsNUll(sUSERNAME) THEN sMESSAGE = sMESSAGE & "<li />Please enter your username."
            IF sPASSWORD = "" OR IsNUll(sPASSWORD) THEN sMESSAGE = sMESSAGE & "<li />Please enter your password."
            IF sMESSAGE = "" THEN
                IF Len(sUSERNAME) < 5 THEN sMESSAGE = sMESSAGE & "<li />Username must be between 5 and 25 characters."
                IF Len(sPASSWORD) < 5 THEN sMESSAGE = sMESSAGE & "<li />Password must be between 5 and 25 characters."
            END IF
        END SUB
        
        %>    
        
        <% IF NOT sMESSAGE = "" THEN %>
            <!--#include file="inc_error.asp"-->
            <!--#include file="inc_footer.asp"-->
            <% Response.End %>
        <% END IF %>     
     
      
        <!-- IF the user is logged in, then show this message -->
    	
            <% IF Session("PMMS_IN") = "True" THEN %>
                <table width="500" align="center" cellpadding="2" cellspacing="0" border="1" bordercolor="WhiteSmoke">
                <tr bgcolor="WhiteSmoke">
                	<td>Success</td>
                </tr><tr>
                	<td align="center">
                        <br />    
                        You are successfully logged in.
                        <br /><br />
                    </td>
                </tr></table>                
                <!--#include file="inc_footer.asp"-->
                <% Response.End %>
            <% END IF %> 
    		  
        <!-- [ IF the user is logged in, then show this message. ] -->
              
        <!-- LOGIN FORM START -->
    
                    <br />
                    <form action="login.asp" method="post" name="frm" onSubmit="return ValidateLogin()">
                    <table align="center" cellpadding="2" cellspacing="0" border="0"><tr>
                    	<td width="110">Your&nbsp;Username:</td>
                    	<td width="190"><input style="width: 100%;" class="textbox" type="Text" name="username" value="<%=Trim(Request.Cookies("USERNAME"))%>" maxlength="25" size="20" /></td>
                    </tr><tr>
                    	<td>Your&nbsp;Password:</td>
                    	<td><input style="width: 100%;" class="textbox" type="Password" name="password" value="" maxlength="25" size="20" /></td>
                    </tr><tr>
                    	<td><input type="Checkbox" name="rem" value="1"<%If NOT Trim(Request.Cookies("USERNAME")) = "" Then%> checked<%End If%> />Save Username</td>
                        <td align="right"><input style="width: 100%;" type="Submit" value="Login Now" /></td>
                    </tr><tr>
    					<td colspan="2"><Br><Br>
    					<a href="reminder.asp">Password Reminder</a>, 
    					<a href="register.asp">New Account Registration</a><Br>
    					</td>
    				</tr></table>
                    <input type="Hidden" name="mode" value="login" />
                    <input type="Hidden" name="ref_page" value="<%=STRIP_CODE(Request.QueryString("ref_page"))%>" />                
                    </form>
                    <br />
    
        <!-- LOGIN FORM END -->        
        
        
    <!--#include file="inc_footer.asp"-->
    Code (markup):
     
    chrisj, Feb 29, 2008 IP
  6. Free Born John

    Free Born John Guest

    Messages:
    111
    Likes Received:
    4
    Best Answers:
    0
    Trophy Points:
    0
    #6
    just search the files in your app for ("PMMS_ID") and you'll see where it's set.

    If that's too hard, just comment out the append_log line. It's hardly vital is it?
     
    Free Born John, Mar 1, 2008 IP
  7. chrisj

    chrisj Well-Known Member

    Messages:
    606
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    101
    #7
    With some guidance I did a find (ctrl-f)on Session("PMMS_ID"). The one that is assigned an actual value is on line 162. It is being assigned to a variable value called sID. This value is being produced on line 60 and it's value is on line 58

    sRS.Open SQL, MyConn.

    So right before it, I ran
    response.write SQL
    respond.end

    And I see this:

    SELECT ID, fldSINCE, fldEXPIRES, fldNAME, fldVALID, fldCHAR, fldACTIVE, fldSTATUS, fldREDIRECT FROM mms_tbl_user WHERE (fldUSERNAME='chrisj') AND (fldPASSWORD='123456') 
    Microsoft VBScript runtime error '800a01a8' 
    
    Object required: '' 
    
    /home/login.asp, line 63
    Code (markup):
    So I run it again with to see what the value of the sID is.

    After this line:
    sMEM_RED = trim(sRS("fldREDIRECT"))

    I put:
    response.write sID
    response.end


    And I see this:
    118

    So now I'm not clear what I should do now with this information, to remedy my original error.

    Can you help me? Thanks
     
    chrisj, Mar 1, 2008 IP