From 043049cf8211d053398cd04e962f3c11a5e88c11 Mon Sep 17 00:00:00 2001
From: Thies Mueller <git@td00.de>
Date: Fri, 8 Jan 2021 15:55:32 +0100
Subject: [PATCH] added a username to the register page

---
 register.php | 20 +++++++++++++++++---
 1 file changed, 17 insertions(+), 3 deletions(-)

diff --git a/register.php b/register.php
index 8530fd0..5261d9d 100644
--- a/register.php
+++ b/register.php
@@ -15,6 +15,7 @@ $showFormular = true;
 if(isset($_GET['register'])) {
     $error = false;
     $email = $_POST['email'];
+    $username = $_POST['username'];
     $givenName = $_POST['givenName'];
     $lastName = $_POST['lastName'];
     $password = $_POST['password'];
@@ -45,11 +46,22 @@ if(isset($_GET['register'])) {
         }    
     }
 
+    if(!$error) { 
+        $statement = $pdo->prepare("SELECT * FROM users WHERE username = :username");
+        $result = $statement->execute(array('username' => $username));
+        $user = $statement->fetch();
+        
+        if($user !== false) {
+            echo 'already a user here<br>';
+            $error = true;
+        }    
+    }
+    
     if(!$error) {    
         $password_hash = password_hash($password, PASSWORD_DEFAULT);
         
-        $statement = $pdo->prepare("INSERT INTO users (email, givenName, lastName, password) VALUES (:email, :givenName, :lastName, :password)");
-        $result = $statement->execute(array('email' => $email, 'givenName' => $givenName, 'lastName' => $lastName, 'password' => $password_hash));
+        $statement = $pdo->prepare("INSERT INTO users (email, username, givenName, lastName, password) VALUES (:email, :username, :givenName, :lastName, :password)");
+        $result = $statement->execute(array('email' => $email, 'username' => $username, 'givenName' => $givenName, 'lastName' => $lastName, 'password' => $password_hash));
         
         if($result) {        
             echo 'successfull registered. <a href="login.php">Login</a>';
@@ -66,12 +78,14 @@ if($showFormular) {
 <form action="?register=1" method="post">
 E-Mail:<br>
 <input type="email" size="40" maxlength="250" name="email"><br><br>
+Username:<br>
+<input type="text" size="40" name="username"><br><br>
 Given Name:<br>
 <input type="text" size="40" name="givenName"><br><br>
 Family Name:<br>
 <input type="text" size="40" name="lastName"><br><br>
 Password:<br>
-<input type="password" size="40"  name="password"><br>
+<input type="password" size="40"  name="password"><br><br>
  
 Password (aganin):<br>
 <input type="password" size="40" name="password_confirm"><br><br>