<title>Registration Form</title> <style> fieldset {padding:3px} input {display:block; margin: 0 auto 10px auto} label {display:block; margin-bottom: 2px} button {display: block; margin: 5px 0} section {width:250px} .errors{border-color:#e74c3c;color:#c0392b;} .menu{border-color:#27ae60;color:#27ae60;} </style> </head> <body> <h1>Assignment Task 2 - Registration Form</h1> <section> <?php if ($user->isLoggedIn()) { ?> <fieldset class="menu"> <a href="secure.php">Secure</a> <a href="logout.php">Logout</a> </fieldset> <?php } else { ?> <?php if (isset($errors)) { ?> <fieldset class="errors"> <?php foreach ($errors as $key => $value) { echo $key . ': ' . $value . '<br/>';
<?php require 'vendor/autoload.php'; require 'config.php'; session_start(); use Assignment\User; $db = new mysqli(host, username, password); $db->query("CREATE DATABASE IF NOT EXISTS " . database); $db = new mysqli(host, username, password, database); $db->query("CREATE TABLE IF NOT EXISTS `sessions` (\n\t\t\t\t\t\t\t\t\tid int NOT NULL AUTO_INCREMENT,\n\t\t\t\t\t\t\t\t\tsession_id varchar(26),\n\t\t\t\t\t\t\t\t\tdata varchar(255),\n\t\t\t\t\t\t\t\t\tmodified varchar(255),\n\t\t\t\t\t\t\t\t\tPRIMARY KEY (id))"); $db->query("CREATE TABLE IF NOT EXISTS `userdetails` (\n\t\t\t\t\t\t\t\t\tid int NOT NULL AUTO_INCREMENT,\n\t\t\t\t\t\t\t\t\tusername varchar(20),\n\t\t\t\t\t\t\t\t\tpassword varchar(40),\n\t\t\t\t\t\t\t\t\temail varchar(50),\n\t\t\t\t\t\t\t\t\turl varchar(150),\n\t\t\t\t\t\t\t\t\tdob varchar(20),\n\t\t\t\t\t\t\t\t\tPRIMARY KEY (id))"); $pages = array(array('pageName' => 'registration', 'loginRequired' => false), array('pageName' => 'secure', 'loginRequired' => true)); $currentPage = basename($_SERVER['REQUEST_URI'], '.php'); $user = new User(); foreach ($pages as $page) { if ($page['pageName'] === $currentPage) { if ($page['loginRequired'] && !$user->isLoggedIn()) { die('Unauthorised'); } } }