Sixtens hemsida Uppgifter Blogg Om

Bankapplikation

Gå till sida

Källkod

bank/

logout.php

transfer.php

index.php

login.php

manage.php

signup.php

change_password.php

modules/

user.php

page.php

session.php

utility.php

users/

hjk.json

sixten2.json

sixten.json

wesweb01/bank/signup.php

1 lines
<?php
# Sida för att skapa konto.

require "modules/session.php";
require 
"modules/page.php";
Session::Init();
Session::RedirectIfLoggedIn();

function 
try_signup($username$password$passwordConfirm): RequestResult
# Funktion för att försöka skapa konto ifall.
{
    if (
$password != $passwordConfirm# Om lösenorden ej stämmer överens.
        
return new RequestResult(false"Lösenorden stämmer ej överens.");
    if (
User::UserExists($username)) # Om användarnamnet redan är taget.
        
return new RequestResult(false"Användarnamn är redan taget.");

    
User::RegisterUser($username$password); # Registrerar användaren.
    
Session::SetUser($username); # Sätter sessionen till användarnamnet, så att man behålls inloggad.
    
header("location: index.php"); # Skickar en till startsidan.
    
exit();
}

$message null;
if (isset(
$_POST["username"]) && isset($_POST["password"]) && isset($_POST["password-confirm"]))
    
# Ifall det finns formulärdata från användaren försöker ett konto att skapas.
    
$message try_signup($_POST["username"], $_POST["password"], $_POST["password-confirm"]);
?>

<!DOCTYPE html>
<html lang="sv">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Banken - Skapa konto</title>
    <link rel="stylesheet" type="text/css" href="../css/materialize.css">
    <script defer type="text/javascript" src="../js/materialize.js"></script>
</head>

<body>
    <?php
    print_navbar
();
    
?>
    <div class="row">
        <div class="col s4 offset-s4">
            <h1>Skapa konto</h1>
            <form method="POST">
                <?php
                
# Resultat skrivs ut.
                
if ($message)
                    echo 
"<p>{$message}</p>";
                
?>
                <p>
                    <label for="username">Användarnamn: </label>
                    <input id="username" type="text" name="username" class="validate" required>
                </p>
                <p>
                    <label for="password">Lösenord: </label>
                    <input id="password" type="password" name="password" class="validate" required>
                </p>
                <p>
                    <label for="password-confirm">Bekräfta lösenord: </label>
                    <input id="password-confirm" type="password" name="password-confirm" class="validate" required>
                </p>
                <p>
                    <input class="btn blue-grey darken" type="submit" value="Skapa konto">
                </p>
            </form>
        </div>
    </div>
</body>

</html>