Merge branch 'joey-testing' into 'master'

Fixed login/register and added logout.php

See merge request !68
This commit was merged in pull request #72.
This commit is contained in:
Lars van Hijfte
2017-01-19 13:37:56 +01:00
10 changed files with 250 additions and 332 deletions

View File

@@ -2,7 +2,7 @@
<html>
<?php
include("../views/login_head.php");
include_once("../queries/connect.php");
require_once("../queries/connect.php");
include_once("../queries/login.php");
?>
<body>
@@ -23,11 +23,11 @@
}
else {
$psw=$_POST["psw"];
$hash=hashPassword()["password"];
$userid=hashPassword()["userID"];
$hash=getUser()["password"];
$userid=getUser()["userID"];
// If there's an account, go to the profile page
if(password_verify($psw.$uname, $hash)) {
if(password_verify($psw, $hash)) {
$_SESSION["userID"] = $userid;
header("location: profile.php");

15
website/public/logout.php Normal file
View File

@@ -0,0 +1,15 @@
<!DOCTYPE html>
<html>
<?php
include("../views/login_head.php");
require_once("../queries/connect.php");
include_once("../queries/login.php");
?>
<body>
<?php
session_start();
unset($_SESSION["userID"]);
header("Location: login.php");
?>
</body>
</html>

View File

@@ -2,7 +2,7 @@
<html>
<?php
include("../views/login_head.php");
include_once("../queries/connect.php");
require_once("../queries/connect.php");
include_once("../queries/register.php");
?>
@@ -15,39 +15,6 @@
$genericErr = $nameErr = $surnameErr = $bdayErr = $usernameErr = $passwordErr = $confirmpasswordErr = $locationErr = $housenumberErr = $emailErr = "";
$correct = true;
// Saves information of filling in the form
if (isset($_POST["name"])) {
$name = $_POST["name"];
}
if (isset($_POST["surname"])) {
$surname = $_POST["surname"];
}
if (isset($_POST["bday"])) {
$bday = $_POST["bday"];
}
if (isset($_POST["username"])) {
$username = $_POST["username"];
}
if (isset($_POST["password"])) {
$password = $_POST["password"];
}
if (isset($_POST["location"])) {
$location = $_POST["location"];
}
if (isset($_POST["housenumber"])) {
$housenumber = $_POST["housenumber"];
}
if (isset($_POST["email"])) {
$email = $_POST["email"];
}
// Trying to register an account
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (empty($_POST["name"])) {
@@ -55,6 +22,7 @@
$correct = false;
} else {
$name = test_input($_POST["name"]);
if (!preg_match("/^[a-zA-Z ]*$/",$name)) {
$nameErr = "Alleen letters en spaties zijn toegestaan!";
$correct = false;
@@ -67,6 +35,7 @@
$correct = false;
} else {
$surname = test_input($_POST["surname"]);
if (!preg_match("/^[a-zA-Z ]*$/",$surname)) {
$surnameErr = "Alleen letters en spaties zijn toegestaan!";
$correct = false;
@@ -84,6 +53,7 @@
$correct = false;
} else {
$username = test_input($_POST["username"]);
if (strlen($username) < 6) {
$usernameErr = "Gebruikersnaam moet minstens 6 karakters bevatten";
$correct = false;
@@ -100,6 +70,7 @@
$correct = false;
} else {
$password = test_input($_POST["password"]);
if (strlen($password) < 8) {
$passwordErr = "Wachtwoord moet minstens 8 karakters bevatten";
$correct = false;
@@ -124,6 +95,7 @@
$correct = false;
} else {
$location = test_input($_POST["location"]);
if (!preg_match("/^[a-zA-Z ]*$/",$location)) {
$locationErr = "Alleen letters en spaties zijn toegestaan!";
$correct = false;
@@ -136,6 +108,7 @@
$correct = false;
} else {
$email = test_input($_POST["email"]);
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
$emailErr = "Geldige email invullen!";
$correct = false;
@@ -158,6 +131,13 @@
}
}
function test_input($data) {
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
/* This view adds register view */
include("../views/register-view.php");
?>

View File

@@ -1,22 +1,6 @@
::selection {
background: #845663;
color: white;
}
::-moz-selection {
background: #845663;
color: white;
}
a, a:link, a:visited, a:hover, a:active {
color: inherit;
text-decoration: none;
}
a.button {
background-color: #845663;
border: 2px solid black;
border-radius: 12px;
background-color: #405550;
border-radius: 10px;
color: white;
cursor: pointer;
height: 50%;
@@ -27,64 +11,19 @@ a.button {
font-size: 16px;
}
a[data-title]:hover:after, img[data-title]:hover:after, span[data-title]:hover:after,
div[data-title]:hover:after{
content: attr(data-title);
padding: 4px 4px;
color: #FFFFFF;
position: absolute;
left: 0;
top: 100%;
z-index: 20;
white-space: nowrap;
-moz-border-radius: 5px;
-webkit-border-radius: 5px;
border-radius: 5px;
-moz-box-shadow: 0px 0px 4px #222;
-webkit-box-shadow: 0px 0px 4px #222;
box-shadow: 0px 0px 4px #222;
background-color: #333;
font-size: 15px;
line-height: normal;
font-family: Arial, sans-serif;
}
/* Add Zoom Animation */
.animate {
animation: animatezoom 0.6s
-webkit-animation: animatezoom 0.6s;
}
/* Body */
body {
height: 900px;
background-image: url(https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTEnqKdVtLbxjKuNsCSCxFRhTOpp3Gm0gsU8bMgA_MeUYyzrUFy);
background-color: #C8CABD;
/*background-image: url(http://play.pokemonshowdown.com/fx/client-bg-shaymin.jpg);
background-size: cover;
background-repeat: repeat-x;
background-attachment: fixed;
background-attachment: fixed;*/
/*background-color: #B78996;*/
color: #333;
font-family: Arial, sans-serif;
}
/* stijl voor alle buttons */
button {
background-color: #845663;
border: 2px solid black;
border-radius: 12px;
color: white;
cursor: pointer;
height: 50%;
margin: 8px 0;
padding: 14px 20px;
width: 25%;
font-family: Arial;
font-size: 16px;
}
/* The Close Button */
.close {
/* Position it in the top right corner outside of the modal */
@@ -106,20 +45,18 @@ button {
/* inlogform */
form {
/*background-color: #a87a87;*/
border: 5px solid #325da3;
background-color: #a87a87;
border-radius: 12px;
height: 55%;
margin: 35px auto;
width: 45%;
height: 75%;
margin: 10px auto;
width: 70%;
overflow-y:auto;
}
/* inlog titel */
h1 {
padding: 16px;
padding: 8px;
text-align: center;
font-size: 2.2em;
font-size: 1.5em;
}
/* registreer titel*/
@@ -130,30 +67,34 @@ h2 {
}
input[type=text], input[type=password], input[type=email], input[type="date"] {
border-radius: 12px;
border: 5px solid #ccc;
box-sizing: border-box;
border-color: #C8CABD;
display: inline-block;
height: 50%;
padding: 8px 20px;
margin: 4px 0;
width: 50%;
font-family: Arial;
font-size: 16px;
}
/*
input[type=text], input[type=password], input[type=email], input[type="date"] {
border: 0px;
border-bottom: 4px solid lightgray;
border-radius: 0px;
}*/
button[type=submit] {
background-color: #845663;
border: 2px solid black;
border-radius: 12px;
color: white;
background-color: #C8CABD;
color: black ;
cursor: pointer;
height: 50%;
margin: 8px 0;
padding: 14px 20px;
width: 50%;
font-family: Arial;
font-size: 16px;
width: 50%;
}
.error {
font-family: Arial;
font-size: 15px;
color: red;
}
label {
@@ -179,52 +120,31 @@ label {
color: red;
}
/* The Modal (background) */
.modal {
background-color: rgb(0,0,0); /* Fallback color */
background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
display: none; /* Hidden by default */
height: 100%;
left: 0;
margin: auto;
overflow: auto; /* Enable scroll if needed */
padding-top: 60px;
position: fixed; /* Stay in place */
top: 0;
width: 100%; /* Full width */
z-index: 1; /* Sit on top */
}
/* Modal Content/Box */
.modal-content {
background-color: #B78996;
border: 5px solid #325da3;
margin: 5px auto; /* 15% from the top and centered */
overflow-y: auto;
width: 40%; /* Could be more or less, depending on screen size */
height: 60%;
}
@keyframes animatezoom {
from {transform: scale(0)}
to {transform: scale(1)}
}
/* datepicker */
select {
border-radius: 12px;
border: 5px solid #ccc;
box-sizing: border-box;
display: inline-block;
height: 50%;
padding: 12px 20px;
margin: 8px 0;
width: 18%;
font-family: Arial;
font-size: 16px;
/* White boxes (squares) */
.platform {
background-color: #FFFFFF;
/*background-image: url(http://www.planwallpaper.com/static/images/518071-background-hd_xO1TwRc.jpg);
background-size: cover;
background-repeat: repeat-x;
background-attachment: fixed;*/
box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
height: 53%;
margin: 34px auto;
overflow-y: auto;
padding: 20px;
width: 35%;
}
/*.platform {
width: 40%;
margin: 34px auto;
}*/
@-webkit-keyframes animatezoom {
from {-webkit-transform: scale(0)}
to {-webkit-transform: scale(1)}

View File

@@ -1,6 +1,6 @@
<?php
function hashPassword() {
function getUser() {
$stmt = $GLOBALS["db"]->prepare("
SELECT
`password`,

View File

@@ -52,7 +52,7 @@ function registerAccount() {
:email
)");
$hash=password_hash($_POST["password"].(strtolower($_POST["username"])), PASSWORD_DEFAULT);
$hash=password_hash($_POST["password"], PASSWORD_DEFAULT);
$stmt->bindParam(":fname", $_POST["name"]);
$stmt->bindParam(":lname", $_POST["surname"]);

View File

@@ -20,7 +20,7 @@ $userinfo = getHeaderInfo();
</div>
<div class="right profile-menu">
<div id="profile-menu-popup">
<a href="index.php"><span style="color: red;" class="fa fa-sign-out" data-title="Uitloggen"></span></a> |
<a href="logout.php"><span style="color: red;" class="fa fa-sign-out" data-title="Uitloggen"></span></a> |
<a href="settings.php"><span style="color: blue;" class="fa fa-cog" data-title="Instellingen"></span></a> |
<a href="profile.php"><span style="color: green;" class="fa fa-user" data-title="Profiel"></span></a>
</div>

View File

@@ -3,12 +3,12 @@
src="img/top-logo.png"
alt="MyHyvesbook+">
</div>
<!-- Login content -->
<form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>"
<div class="platform">
<h1>Welkom bij MyHyvesbook+</h1>
<!-- Login content -->
<form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>"
return= $correct
method="post">
<h1>Welkom bij MyHyvesbook+</h1>
<!-- Login name -->
<div class="login_containerlogin">
@@ -43,9 +43,9 @@
Login
</button>
</div>
</form>
<!-- Button for going to the register screen -->
<div class="login_containerlogin">
</form>
<!-- Button for going to the register screen -->
<div class="login_containerlogin">
<a href="https://myhyvesbookplus.nl/~joey/public/register.php" class="button">Registreer een account</a>
</div>
</div>

View File

@@ -1,6 +1,9 @@
<head>
<meta charset="utf-8">
<title>MyHyvesbook+</title>
<link rel="stylesheet"
type="text/css"
href="styles/main.css">
<link rel="stylesheet"
type="text/css"
href="styles/index.css">

View File

@@ -4,11 +4,12 @@
alt="MyHyvesbook+">
</div>
<!-- Register Content -->
<form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>"
<div class="platform">
<h1>Registreer uw account</h1>
<!-- Register Content -->
<form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>"
return= $correct
method="post">
<h2>Registreer uw account</h2>
<!-- Error message -->
<div class="login_containerfault"><?php echo $genericErr;?></span></div>
@@ -22,7 +23,7 @@
value="<?php echo $name ?>"
title="Mag alleen letters bevatten"
>
<span class="error">* <?php echo $nameErr;?></span>
*<span class="error"><?php echo $nameErr;?></span>
</div>
<!-- Register surname -->
@@ -34,7 +35,7 @@
value="<?php echo $surname ?>"
title="Mag alleen letters bevatten"
>
<span class="error">* <?php echo $surnameErr;?></span>
*<span class="error"> <?php echo $surnameErr;?></span>
</div>
<!-- Register birthday -->
@@ -46,7 +47,7 @@
id="bday"
placeholder="01/01/1900"
>
<span class="error">* <?php echo $bdayErr;?></span>
*<span class="error"> <?php echo $bdayErr;?></span>
</div>
<!-- Register username -->
@@ -58,12 +59,12 @@
value="<?php echo $username ?>"
title="Moet minimaal 6 karakters bevatten"
>
<span class="error">* <?php echo $usernameErr;?></span>
</div>
*<span class="error"> <?php echo $usernameErr;?></span>
<ul>
<li>Minstens 6 karakters</li>
</ul>
</div>
<!-- Register password -->
<div class="login_containerregister">
@@ -74,13 +75,11 @@
value="<?php echo $password ?>"
id="password"
>
<span class="error">* <?php echo $passwordErr;?></span>
</div>
*<span class="error"> <?php echo $passwordErr;?></span>
<ul>
<li>Minstens 8 karakters</li>
</ul>
</div>
<!-- Repeat password -->
<div class="login_containerregister">
<label><b>Herhaal wachtwoord</b></label>
@@ -91,7 +90,7 @@
id="confirmpassword"
title="Herhaal wachtwoord"
>
<span class="error">* <?php echo $confirmpasswordErr;?></span>
*<span class="error"> <?php echo $confirmpasswordErr;?></span>
</div>
<!-- Register location -->
@@ -103,7 +102,7 @@
value="<?php echo $location ?>"
pattern="[A-Za-z]{1,}"
title="Mag alleen letters bevatten">
<span class="error">* <?php echo $locationErr;?></span>
*<span class="error"> <?php echo $locationErr;?></span>
</div>
<!-- Register email -->
@@ -115,7 +114,7 @@
value="<?php echo $email ?>"
id="email"
title="Voer een geldige email in">
<span class="error">* <?php echo $emailErr;?></span>
*<span class="error"> <?php echo $emailErr;?></span>
</div>
<!-- Button for registering -->
@@ -127,9 +126,10 @@
Registreer uw account
</button>
</div>
</form>
</form>
<!-- Button for going back to login screen -->
<div class="login_containerlogin">
<!-- Button for going back to login screen -->
<div class="login_containerlogin">
<a href="https://myhyvesbookplus.nl/~joey/public/login.php" class="button">Login met een account</a>
</div>
</div>