kurs-app/Model/UserModel.php

47 lines
1.1 KiB
PHP

<?php
namespace Blog\Model;
use Blog\Model\Database;
use PDOException;
use Random\RandomException;
class UserModel extends Database
{
/**
* @throws RandomException
*/
public function createUser($values)
{
$salt = bin2hex(random_bytes(16));
$hash = hash('sha256', $values["password"] . $salt);
$guid = $this->createUUID();
$pdo = $this->linkDB();
$sql = "INSERT INTO users (`id`,`vorname`,`name`,`email`,`passwort`,`salt`,`role`)
VALUES (:guid, :name, :lastname, :email, :password, :salt, :role)";
try {
$sth = $pdo->prepare($sql);
$sth->execute(array
(":guid" => $guid,
(":name") => $values["name"],
":lastname" => $values["lastname"],
":email" => $values["email"],
":password" => $hash,
":salt" => $salt,
":role" => $values["role"]
));
} catch (PDOException $e) {
new \Blog\Library\ErrorMsg("Fehler beim Schreiben der Daten.", $e);
die;
}
return true;
}
}