Show sourcecode
The following files exists in this folder. Click to view.
account.php
create_quiz.js
create_quiz.php
fetch_table.php
frontpage.php
header.php
login.php
quiz.php
quiz_answer_finished.php
quiz_creation_finished.php
signup.php
style.css
signup.php
89 lines UTF-8 Windows (CRLF)
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
<?php
session_start();
include('../../incl/dbconnection.php');
/**
* @var PDO $dbconn
*/
?>
<!DOCTYPE html>
<html lang="sv">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Inloggning</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<div class="center-container" style="height: 95vh;">
<div>
<?php
// Försök skapa konto
try {
// Hämta form data
$username = isset($_POST['username']) ? $_POST['username'] : null;
$email = isset($_POST['email']) ? $_POST['email'] : null;
$password = isset($_POST['password']) ? $_POST['password'] : null;
// Kolla om all data finns
if ($username && $password && $email) {
$hashed_pass = password_hash($password, PASSWORD_BCRYPT);
$sqlSelect = "SELECT 1 FROM quiz_users WHERE username=? OR email=?";
$selectStmt = $dbconn->prepare($sqlSelect);
$selectStmt->execute([$username, $email]);
$result = $selectStmt->fetch(PDO::FETCH_ASSOC);
if (!$result) {
// Create new row
$sqlInsert = "INSERT INTO quiz_users (email, username, password) VALUES(?,?,?)";
$insertStmt = $dbconn->prepare($sqlInsert);
$insertStmt->execute([$email, $username, $hashed_pass]);
// Get information about new record
$sqlSelect = "SELECT * FROM quiz_users WHERE username=?";
$selectStmt = $dbconn->prepare($sqlSelect);
$selectStmt->execute([$username]);
$result = $selectStmt->fetch(PDO::FETCH_ASSOC);
echo "<p class='text-center'>Konto skapat! Skickar vidare dig...</p>";
$_SESSION['isLoggedIn'] = true;
$_SESSION['userId'] = $result['user_id'];
$_SESSION['userType'] = $result['user_type'];
$pageToSendTo = isset($_SESSION['lastVisited']) ? $_SESSION['lastVisited'] : "frontpage.php";
header("Location:$pageToSendTo");
} else {
echo "<p class='text-center'>Användarnamn eller epost finns redan</p>";
}
}
} catch (PDOException $e) {
echo "<br>" . $e->getMessage();
}
?>
<form action="" method="post">
<h2>Skapa konto</h2>
<div class="row">
<label for="username">Användarnamn:</label>
<input type="text" name="username" id="username" autocomplete="off" required>
</div>
<div class="row">
<label for="email">Epost:</label>
<input type="email" name="email" id="email" autocomplete="off" required>
</div>
<div class="row">
<label for="password">Lösenord:</label>
<input type="password" name="password" id="password" autocomplete="off" required>
</div>
<div class="row">
<input type="submit" value="Skapa konto">
</div>
<div class="row">
<p style="font-size:small">Har redan ett konto? <a href="login.php">Logga in</a></p>
</div>
</div>
</div>
</form>
</body>
</html>