Hendrik testing #64

Merged
11342374 merged 35 commits from hendrik-testing into master 2017-01-18 16:08:50 +01:00
7 changed files with 124 additions and 114 deletions
Showing only changes of commit 714760871c - Show all commits

View File

@@ -1,7 +1,9 @@
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
<?php <?php
include("../views/login_head.php"); include("../views/login_head.php");
include_once("../queries/connect.php");
include_once("../queries/login.php");
?> ?>
<body> <body>
<?php <?php
@@ -11,7 +13,6 @@ include("../views/login_head.php");
$uname = $psw =""; $uname = $psw ="";
$loginErr =""; $loginErr ="";
// Trying to login // Trying to login
if ($_SERVER["REQUEST_METHOD"] == "POST") { if ($_SERVER["REQUEST_METHOD"] == "POST") {
// Empty username or password field // Empty username or password field
@@ -20,49 +21,23 @@ include("../views/login_head.php");
} }
else { else {
$uname=$_POST["uname"]; $uname=strtolower($_POST["uname"]);
$psw=$_POST["psw"]; $psw=$_POST["psw"];
$hash=hashPassword()["password"];
// Protection against MySQL injections $userid=hashPassword()["userID"];
$uname = stripslashes($uname);
$psw = stripslashes($psw);
$uname = mysql_real_escape_string($uname);
$psw = mysql_real_escape_string($psw);
// Database information
$servername = "agile136.science.uva.nl";
$username = "mhbp";
$password = "qdtboXhCHJyL2szC";
// Creates connection
$conn = new mysqli($servername, $username, $password);
// Selects database
$db = mysql_select_db("company", $connection);
// Query for listing all accounts that meets the requirement of the login information
$query = mysql_query("select * from login where password='$psw' AND username='$uname'", $connection);
// Checks if there's an account
$count = mysql_num_rows($query);
// If there's an account, go to the profile page // If there's an account, go to the profile page
if($count == 1) { if(password_verify($psw.$uname, $hash)) {
$_SESSION[$uname] = $uname; $_SESSION["userID"] = $userid;
$_SESSION[$userID] = $userID; header("location: /profile.php");
header("location: myhyvesbookplus.nl/profile.php"); } else {
}else {
$loginErr = "Inloggegevens zijn niet correct"; $loginErr = "Inloggegevens zijn niet correct";
} }
// Closing Connection
mysql_close($connection);
} }
} }
/* This view adds login view */ /* This view adds login view */
include("../views/login-view.php"); include("../views/login-view.php");
?> ?>

View File

@@ -3,6 +3,7 @@
<?php <?php
include("../views/login_head.php"); include("../views/login_head.php");
include_once("../queries/connect.php"); include_once("../queries/connect.php");
include_once("../queries/register.php");
?> ?>
<body> <body>
@@ -10,8 +11,8 @@
session_start(); session_start();
// define variables and set to empty values // define variables and set to empty values
$name = $surname = $bday = $username = $password = $confirmpassword = $streetname = $housenumber = $email = ""; $name = $surname = $bday = $username = $password = $confirmpassword = $location = $housenumber = $email = "";
$genericErr = $nameErr = $surnameErr = $bdayErr = $usernameErr = $passwordErr = $confirmpasswordErr = $streetnameErr = $housenumberErr = $emailErr = ""; $genericErr = $nameErr = $surnameErr = $bdayErr = $usernameErr = $passwordErr = $confirmpasswordErr = $locationErr = $housenumberErr = $emailErr = "";
$correct = true; $correct = true;
// Saves information of filling in the form // Saves information of filling in the form
@@ -35,8 +36,8 @@
$password = $_POST["password"]; $password = $_POST["password"];
} }
if (isset($_POST["streetname"])) { if (isset($_POST["location"])) {
$streetname = $_POST["streetname"]; $location = $_POST["location"];
} }
if (isset($_POST["housenumber"])) { if (isset($_POST["housenumber"])) {
@@ -87,6 +88,10 @@
$usernameErr = "Gebruikersnaam moet minstens 6 karakters bevatten"; $usernameErr = "Gebruikersnaam moet minstens 6 karakters bevatten";
$correct = false; $correct = false;
} else if (getExistingUsername() == 1){
$usernameErr = "Gebruikersnaam bestaat al";
$correct = false;
} }
} }
@@ -108,30 +113,24 @@
} }
if ($_POST["password"]!= $_POST["confirmpassword"]) { if ($_POST["password"] != $_POST["confirmpassword"]) {
$confirmpasswordErr = "Wachtwoorden matchen niet"; $confirmpasswordErr = "Wachtwoorden matchen niet";
$correct = false; $correct = false;
} }
if (empty($_POST["streetname"])) { if (empty($_POST["location"])) {
$streetnameErr = "Straatnaam is verplicht!"; $locationErr = "Straatnaam is verplicht!";
$correct = false; $correct = false;
} else { } else {
if (!preg_match("/^[a-zA-Z ]*$/",$streetname)) { if (!preg_match("/^[a-zA-Z ]*$/",$location)) {
$streetnameErr = "Alleen letters en spaties zijn toegestaan!"; $locationErr = "Alleen letters en spaties zijn toegestaan!";
$correct = false; $correct = false;
} }
} }
if (empty($_POST["housenumber"])) {
$housenumberErr = "Huisnummer is verplicht!";
$correct = false;
}
if (empty($_POST["email"])) { if (empty($_POST["email"])) {
$emailErr = "Email is verplicht!"; $emailErr = "Email is verplicht!";
$correct = false; $correct = false;
@@ -140,6 +139,11 @@
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) { if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
$emailErr = "Geldige email invullen!"; $emailErr = "Geldige email invullen!";
$correct = false; $correct = false;
} else if (getExistingEmail() == 1){
$emailErr = "Email bestaat al";
$correct = false;
} }
} }
@@ -148,48 +152,9 @@
$genericErr = "Bepaalde velden zijn verkeerd of niet ingevuld!"; $genericErr = "Bepaalde velden zijn verkeerd of niet ingevuld!";
} else { } else {
$servername = "agile136.science.uva.nl"; registerAccount();
$username = "mhbp"; header("location: login.php");
$password = "qdtboXhCHJyL2szC";
// Creates connection
$conn = new mysqli($servername, $username, $password);
// Checks connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
// Query for inserting all the data in the database
$sql = "INSERT INTO
VALUES ($name, $surname, $bday, $username, $password,
$confirmpassword, $streetname, $housenumber, $email)";
// Checks if able to insert into database
if (mysqli_query($conn, $sql)) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}
<?php
/* Execute a prepared statement by binding PHP variables */
$calories = 150;
$colour = 'red';
$sth = $dbh->prepare('SELECT name, colour, calories
FROM fruit
WHERE calories < :calories AND colour = :colour');
$sth->bindParam(':calories', $calories, PDO::PARAM_INT);
$sth->bindParam(':colour', $colour, PDO::PARAM_STR, 12);
$sth->execute();
?>
// Closing connection
mysql_close($connection);
} }
} }

View File

@@ -59,8 +59,9 @@ div[data-title]:hover:after{
body { body {
height: 900px; height: 900px;
background-image: url(https://images2.pixlis.com/background-image-plaid-checkered-seamless-tileable-235ftm.png); background-image: url(https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTEnqKdVtLbxjKuNsCSCxFRhTOpp3Gm0gsU8bMgA_MeUYyzrUFy);
background-size: contain; background-size: contain;
background-repeat: repeat-x;
background-attachment: fixed; background-attachment: fixed;
/*background-color: #B78996;*/ /*background-color: #B78996;*/

19
website/queries/login.php Normal file
View File

@@ -0,0 +1,19 @@
<?php
function hashPassword() {
$stmt = $GLOBALS["db"]->prepare("
SELECT
`password`,
`userID`
FROM
`user`
WHERE
`username` LIKE :username
");
$stmt->bindParam(":username", $_POST["uname"]);
$stmt->execute();
return $stmt->fetch(PDO::FETCH_ASSOC);
}
?>

View File

@@ -0,0 +1,62 @@
<?php
function getExistingUsername() {
$stmt = $GLOBALS["db"]->prepare("
SELECT
`username`
FROM
`user`
WHERE
`username` LIKE :username
");
$stmt->bindParam(":username", $_POST["username"]);
$stmt->execute();
return $stmt->rowCount();
}
function getExistingEmail() {
$stmt = $GLOBALS["db"]->prepare("
SELECT * FROM `user` WHERE `email` = :email
");
$stmt->bindParam(":email", $_POST["email"]);
$stmt->execute();
return $stmt->rowCount();
}
function registerAccount() {
$stmt = $GLOBALS["db"]->prepare("
INSERT INTO
`user`(fname,
lname,
birthdate,
username,
password,
location,
email)
VALUES(
:fname,
:lname,
:bday,
:username,
:password,
:location,
:email
)");
$hash=password_hash($_POST["password"].(strtolower($_POST["username"])), PASSWORD_DEFAULT);
$stmt->bindParam(":fname", $_POST["name"]);
$stmt->bindParam(":lname", $_POST["surname"]);
$stmt->bindParam(":bday", $_POST["bday"]);
$stmt->bindParam(":username", $_POST["username"]);
$stmt->bindParam(":password", $hash);
$stmt->bindParam(":location", $_POST["location"]);
$stmt->bindParam(":email", $_POST["email"]);
$stmt->execute();
$stmt->rowCount();
}
?>

View File

@@ -10,9 +10,9 @@ function getSettings() {
`birthdate`, `birthdate`,
`bio`, `bio`,
`profilepicture` `profilepicture`
FROM FROM
`user` `user`
WHERE WHERE
`userID` = :userID `userID` = :userID
"); ");
@@ -43,4 +43,4 @@ function updateSettings() {
$stmt->bindParam(":userID", $_SESSION["userID"]); $stmt->bindParam(":userID", $_SESSION["userID"]);
$stmt->execute(); $stmt->execute();
} }

View File

@@ -94,28 +94,16 @@
<span class="error">* <?php echo $confirmpasswordErr;?></span> <span class="error">* <?php echo $confirmpasswordErr;?></span>
</div> </div>
<!-- Register streetname --> <!-- Register location -->
<div class="login_containerregister"> <div class="login_containerregister">
<label><b>Straatnaam</b></label> <label><b>Woonplaats</b></label>
<input type="text" <input type="text"
placeholder="Voer uw straatnaam in" placeholder="Voer uw woonplaats in"
name="streetname" name="location"
value="<?php echo $streetname ?>" value="<?php echo $location ?>"
pattern="[A-Za-z]{1,}" pattern="[A-Za-z]{1,}"
title="Mag alleen letters bevatten"> title="Mag alleen letters bevatten">
<span class="error">* <?php echo $streetnameErr;?></span> <span class="error">* <?php echo $locationErr;?></span>
</div>
<!-- Register housenumber -->
<div class="login_containerregister">
<label><b>Huisnummer</b></label>
<input type="text"
placeholder="Voer uw straatnummer in"
name="housenumber"
value="<?php echo $housenumber ?>"
pattern="[1-9][0-9]{0,}"
title="Mag alleen nummers bevatten">
<span class="error">* <?php echo $housenumberErr;?></span>
</div> </div>
<!-- Register email --> <!-- Register email -->