Example #1
0
    public function save(User $user)
    {
        if ($user->getId()) {
            $sql = <<<sql
                UPDATE user
                SET
                    username = ?,
                    password = ?,
                    secret   = ?
                WHERE id = ?
sql;
            $sth = $this->dbh->prepare($sql);
            $sth->execute([$user->getUsername(), $user->getPassword(), $user->getSecret(), $user->getId()]);
        } else {
            throw new \Exception("Creating new users is not implemented yet!");
        }
    }
Example #2
0
 static function connect($login, $password)
 {
     $pdo = DataSource::load();
     $statement = 'SELECT * FROM User WHERE login = :login LIMIT 1';
     $preparedStatement = $pdo->prepare($statement);
     $preparedStatement->execute(array('login' => $login));
     $userData = $preparedStatement->fetch();
     if (!empty($userData)) {
         if (self::cryptPassword($password, $userData['salt']) == $userData['hash']) {
             $user = new User();
             $user->setProperties($userData);
             self::$user = $user;
             $_SESSION[self::SESSION_KEY] = $user->getSecret();
             return self::$user;
         }
     }
     return false;
 }