Esempio n. 1
0
  <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/>';
Esempio n. 2
0
<?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');
        }
    }
}