public function addUserToDatabase(\model\User $user)
 {
     //Checking if username already exists
     if (isset($this->users[$user->getUserName()])) {
         throw new \Exception("Username already exists");
     } else {
         if (isset($this->users[$user->getPassword()])) {
             throw new \Exception("Password already exists");
         } else {
             //saving to "database with username as index key"
             $key = $user->getUserName();
             $this->users[$key] = $user->getPassword();
         }
     }
 }
 public function saveNewUser(\model\User $newUser)
 {
     $newUser->getUserName();
     $file = fopen("data/" . $newUser->getUserName() . ".txt", "w");
     fwrite($file, $newUser->getPassword());
     fclose($file);
 }
Exemple #3
0
 public function save(\model\User $user)
 {
     if ($this->doExists($user->getUsername())) {
         throw new \Exception();
     }
     $stmt = $this->database->prepare("INSERT INTO  `lab4` (`username` , `password`) VALUES (?, ?)");
     if ($stmt === FALSE) {
         throw new \Exception($this->database->error);
     }
     $username = $user->getUsername();
     $password = $user->getPassword();
     $stmt->bind_param('ss', $username, $password);
     $stmt->execute();
 }
Exemple #4
0
 /**
  * Login user
  *
  * @param \model\User $credential
  * @return bool
  */
 public function doLogin(\model\User $credential)
 {
     $username = $credential->getUsername();
     $password = $credential->getPassword();
     $records = new \Db();
     $records->query('SELECT username, password FROM users WHERE BINARY username = :username');
     $records->bind(':username', $username);
     $results = $records->single();
     if (count($results) > 0 && password_verify($password, $results['password'])) {
         return $this->sessionStorage->set(SessionStorage::$auth, $username);
     } else {
         return false;
     }
 }
 /**
  * @return bool
  * Encrypts password with the php 5.5 hashing API (uses BCrypt)
  */
 public function addUser(\model\User $user)
 {
     $successfulRegistration = false;
     $users = $this->getAllUsers();
     if ($users->isInList($user->getUsername())) {
         throw new \UserAlreadyExistException("User exists, pick another username.");
     }
     try {
         $db = $this->db->getConnection();
         $sql = "INSERT INTO {$this->dbTable} (" . self::$usernameColumn . ", " . self::$passwordColumn . ") VALUES (?, ?)";
         $params = array($user->getUsername(), password_hash($user->getPassword(), PASSWORD_DEFAULT));
         $query = $db->prepare($sql);
         $query->execute($params);
         $successfulRegistration = true;
     } catch (\PDOException $e) {
         die("Database error, please try again later");
     }
     return $successfulRegistration;
 }
Exemple #6
0
 /**
  * @param User $user
  * @return bool
  * @throws \EmtpyPasswordException
  * @throws \EmtpyUsernameException
  */
 public function authenticateUser(\model\User $user)
 {
     $username = $user->getUserName();
     $password = $user->getPassword();
     if (empty($username)) {
         throw new \common\EmtpyUsernameException();
     }
     if (empty($password)) {
         throw new \common\EmtpyPasswordException();
     }
     if (file_exists("data/" . $username . ".txt")) {
         $handle = fopen("data/" . $username . ".txt", "r");
         $contents = fread($handle, filesize("data/" . $username . ".txt"));
         fclose($handle);
         if ($contents === $password) {
             $this->setUserLoggedInSession();
             return true;
         } else {
             return false;
         }
     } else {
         return false;
     }
 }
Exemple #7
0
 function persist(User $user)
 {
     $requete = "INSERT INTO user(id, login, password) value(:id, :login,:password)";
     $param = array('id' => $user->getId(), 'login' => $user->getLogin(), 'password' => $user->getPassword());
     $this->conn->prepareAndExecuteQuery($requete, $param);
 }
 public function persist(User $user)
 {
     $query = "INSERT INTO USERS VALUES (:user_id, :user_name, :user_password)";
     return $this->connection->executeQuery($query, [':user_id' => $user->getId(), ':user_name' => $user->getName(), ':user_password' => $user->getPassword()]);
 }
 /**
  * This method sends new users data to the database
  * @param User $registerData
  */
 public function registerNewUserInDB(User $registerData)
 {
     $query = $this->connect->prepare("INSERT INTO `" . self::TABLE_NAME . "` VALUES ('', ?, ?, ?, ?)");
     $query->bind_param('ssss', $this->escape_string($registerData->getNickname()), $this->escape_string($registerData->getPassword()), $this->escape_string($registerData->getRealName()), $this->escape_string($registerData->getUserID()));
     $query->execute();
 }