Coldfusion - NEQ检查后无法登录

时间:2016-02-11 13:43:14

标签: coldfusion

<cffunction name="checkUsers" access="public" output="false" returntype="any">
    <cfargument name="dbname"   type="any" required="no" default="#SERVER.cfc.core.getDBName()#" />
    <cfargument name="myForm" type="Struct" required="yes">

    <cfset LOCAL = structNew() />

    <cfquery name="Login" datasource="#SERVER.cfc.core.getDSN()#">            
        SELECT * 
        FROM logboek.tbl_users 
        where Users_name = <cfqueryparam cfsqltype="cf_sql_varchar" value="#ARGUMENTS.myForm.Users_name#" />    
    </cfquery>

    <cfif isDefined("form.Users_name") and isDefined("form.Users_password")>
        <cfif FORM.Users_password EQ login.Users_password>
            <a href="http://toomba.local/index.cfm/action/blog.Logboek">Logboek</a>
        </cfif>

    <cfelse>
        <a href="http://toomba.local/index.cfm/action/blog.Logboek_login">Login</a>
    </cfif>
</cffunction>

如果用户存在且密码正确,我希望与用户进行检查如果用户不存在或密码不正确,请转到blog.logboek再次转到blog.logboek_login。但是在我将NEQ检查放在那里之后,如果我使用随机密码无关紧要,或者如果我使用正确的密码,它将始终返回到登录页面。代码已编辑但仍停留在登录页面上。

1 个答案:

答案 0 :(得分:-1)

这里我有修复:

<cffunction name="checkUsers" access="public" output="false" returntype="any">
    <cfargument name="dbname"   type="any" required="no" default="#SERVER.cfc.core.getDBName()#" />
    <cfargument name="myForm" type="Struct" required="yes">

    <cfset LOCAL = structNew() />
    <cfset LOCAL.myReturn = FALSE />
    <cfquery name="Login" datasource="#SERVER.cfc.core.getDSN()#">            
        SELECT * 
        FROM logboek.tbl_users 
        WHERE Users_name = <cfqueryparam cfsqltype="cf_sql_varchar" value="#ARGUMENTS.myForm.Users_name#" />    
    </cfquery>
    <cfif isDefined("form.Users_name") and isDefined("form.Users_password")>
        <cfif FORM.Users_password EQ Login.Users_password>
            <cfset LOCAL.myReturn = TRUE />
        <cfelse>
            <cfset LOCAL.myReturn = FALSE />    
        </cfif>
    </cfif>
    <cfreturn LOCAL.myReturn/>
</cffunction>