kurs-app/Model/UserModel.php

46 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 = rand(0, 500);
$pdo = $this->linkDB();
$sql = "INSERT INTO user (`id`, `name`,`vorname`,`email`,`passwort`,`salt`,`role`)
VALUES (:guid, :name, :firstname, :email, :password, :salt, :role)";
try {
$sth = $pdo->prepare($sql);
$sth->execute([
":guid" => $guid,
":name" => $values["name"],
":firstname" => $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;
}
}