-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathaccount-bewerken2.php
96 lines (79 loc) · 3.69 KB
/
account-bewerken2.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
<!--
Deze pagina zorgt ervoor dat een gebruiker zijn account kan bewerken.
Dat gebeurt met de sql query UPDATE.
Ten slotte wordt er ook om het wachtwoord gevraagd, dit ter bevestiging.
-->
<?php
if (!isset($_SESSION['logged-in'])){
echo 'U moet uiteraard ingelogd zijn om uw account aan te passen.';
exit();
}
$db = connect_to_db();
$gebruiker_id = $_SESSION['gebruiker-id'];
$wachtwoord = $_POST['wachtwoord'];
$voornaam = $_POST['voornaam'];
$achternaam = $_POST['achternaam'];
$postcode = $_POST['postcode'];
$huisnummer = $_POST['huisnummer'];
$toevoeging = $_POST['toevoeging'];
$telefoonnummer = $_POST['telefoonnummer'];
$telefoonnummer2 = $_POST['telefoonnummer2'];
$telelfoonnummerTot;
$emailadres = $_POST['e-mailadres'];
$nonStrictPostcode = '/^[0-9]{4}[\s-][a-z]{2}$/i';
if(preg_match($nonStrictPostcode, $postcode)){
$postcode=substr($postcode,0,4).substr($postcode,5);
}
$adres_info = json_decode(get_address($postcode, $huisnummer));
$straat = $adres_info->street;
$plaats = $adres_info->city;
$validNaam = '/^[a-z]{1,256}$/i';
$validPostcode = '/^[0-9]{4}[\s-]?[a-z]{2}$/i';
$validTel1 = '/^[0-9]{2,4}$/';
$validTel2 = '/^[0-9]{6,8}$/';
$validTelTot = '/^[0-9]{10}$/';
$validHuis = '/^[0-9]{1,5}$/';
$validMail='/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i';
$sqlww = $db->prepare("SELECT wachtwoord FROM Gebruikers WHERE id = ? LIMIT 1");
$sqlww->bind_param('i', $_SESSION['gebruiker-id']);
$sqlww->execute();
$sqlww->bind_result($wwdb);
$sqlww->fetch();
$sqlww->free_result();
if (!check_wachtwoord($wachtwoord, $wwdb)){
redirect_to("wachtwoord-onjuist.html");
$db->close();
exit();
}
else {
if(preg_match($validNaam, $voornaam)&&
preg_match($validNaam, $achternaam)&&
preg_match($validPostcode, $postcode)&&
preg_match($validHuis, $huisnummer)&&
preg_match($validTel1, $telefoonnummer)&&
preg_match($validTel2, $telefoonnummer2)&&
preg_match($validMail, $emailadres)){
$telefoonnummerTot = $telefoonnummer . '-' . $telefoonnummer2;
$sqli_gebruikers = $db->prepare("UPDATE Gebruikers SET naam = ?, achternaam = ?, telefoonnummer = ?, email = ? WHERE id= '".$_SESSION['gebruiker-id']."'");
$sqli_gebruikers->bind_param('ssss',$voornaam, $achternaam, $telefoonnummerTot, $emailadres);
$sqli_adressen = $db->prepare("UPDATE Adressen JOIN AdresGebruiker ON Adressen.id = adres_id SET postcode = ?, huisnummer = ?, toevoeging = ?, plaats = ?, straat = ? WHERE id= '".$_SESSION['gebruiker-id']."'");
$sqli_adressen->bind_param('sisss',$postcode , $huisnummer , $toevoeging , $plaats , $straat);
if(!$sqli_gebruikers->execute())
throw new Exception($sqli_gebruikers->error);
if(!$sqli_adressen->execute())
throw new Exception($sqli_adressen->error);
redirect_to("wijzigingen-succesvol.html");
$db->close();
exit();
}
else{
echo preg_match($validNaam, $voornaam).
preg_match($validNaam, $achternaam).
preg_match($validPostcode, $postcode).
preg_match($validHuis, $huisnummer).
preg_match($validTel1, $telefoonnummer).
preg_match($validTel2, $telefoonnummer2).
preg_match($validMail, $emailadres);
}
}
?>