Jump to content
Larry Ullman's Book Forums

v0t

Members
  • Posts

    2
  • Joined

  • Last visited

Posts posted by v0t

  1. Hi all!

    I started using Yii and I'm trying to authenticate users by db table from login form, but i'm getting in trouble with find() function. This is my UserIdentity's class:

     

    private $_id;
    public function authenticate()
       {
     $username = strtolower($this->username);
        $record=User::model()->find('LOWER(username)=?',array($username));
        if($record===null)
    	    $this->errorCode=self::ERROR_USERNAME_INVALID;
        else if($record->password!==md5($this->password))
    	    $this->errorCode=self::ERROR_PASSWORD_INVALID;
        else
        {
    	    $this->_id=$record->id;
    	    $this->setState('title', $record->title);
    	    $this->errorCode=self::ERROR_NONE;
        }
        return !$this->errorCode;
       }
    public function getId()
       {
        return $this->_id;
       }
    

     

     

    I'm running the project in xdebug-mode (under Netbeans IDE) and i check $username is correct. ($username contains the same value i insert on the browser)

    I go step by step and i see that, immediately after find() line, $record has 'username' and 'password' validated as void string and then that errorCode is equals to 2.

    I tried using findByAttributes() function too, but there's the same problem. No exception, just 'Incorrect username or password.' message.

     

    DB Connection works because i created 3 users using webapp. Moreover if there was a db connection error i would assume that there should be an error in logs.

     

    I'm not really understanding: that find() is one of the first operation that i do in a Login Form.

     

    I'm sorry for my english,

    thanks!

     

    PS. i'm using SQL Server 2008

×
×
  • Create New...