registratie lukt altijd, ook als velden niet (goed) ingevuld zijn
Ik ben bezig met een registratie/inlog systeem te maken, op zich gaat het best aardig maar als je nu alle velden invult op registreer.php en je vult een veld niet (goed) in, geeft hij wel gewoon aan dat je geregistreerd bent, dit is niet de bedoeling...
Als je een veld leeg laat, moet hij terug gaan
Als wachtwoord en herhaalwachtwoord niet overeenkomen moet hij terug gaan
Voor de rest is het goed en moet hij je registreren.
registreer_module.php (verwerken)
Code (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
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
<?php
/**
* @author Timo
* @copyright 2011
*
CREATE TABLE klanten
(
id int AUTO_INCREMENT PRIMARY KEY NOT NULL,
gebruikersnaam varchar(30) NOT NULL,
wachtwoord varchar(50) NOT NULL,
email varchar (70) NOT NULL,
voornaam varchar(20) NOT NULL,
achternaam varchar(50) NOT NULL,
adres varchar(50) NOT NULL,
postcode varchar(6) NOT NULL,
woonplaats varchar(30) NOT NULL,
telefoon varchar(15) NOT NULL,
klantengroep varchar(20) NOT NULL DEFAULT 'papier',
korting int NOT NULL DEFAULT '0',
rechten varchar(10) NOT NULL DEFAULT 'gebruiker'
)
CREATE TABLE klantengroep
(
code varchar(20) NOT NULL,
korting int NOT NULL
)
*
*/
$gebruikersnaam = strtolower($_POST['gebruikersnaam']);
$wachtwoord = md5($_POST['wachtwoord']);
$postcode = trim($_POST['postcode']);
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
if(isset($_POST['gebruikersnaam'], $_POST['wachtwoord'], $_POST['herhaalwachtwoord'], $_POST['email'], $_POST['voornaam'], $_POST['achternaam'], $_POST['adres'], $_POST['postcode'], $_POST['woonplaats'], $_POST['telefoon']))
{
if($_POST['wachtwoord'] == $_POST['herhaalwachtwoord']) {
$con = mysql_connect("localhost","***","***");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("bestel", $con);
$sql="INSERT INTO klanten (id, gebruikersnaam, wachtwoord, email, voornaam, achternaam, adres, postcode, woonplaats, telefoon)
VALUES
('','$gebruikersnaam','$wachtwoord','$_POST[email]','$_POST[voornaam]','$_POST[achternaam]','$_POST[adres]','$postcode','$_POST[woonplaats]','$_POST[telefoon]')";
if (!mysql_query($sql,$con))
{
die('Error: ' . mysql_error());
}
mysql_close($con);
}
else {
header('Refresh: 3; url=registreer.php');
echo "De wachtwoorden komen niet met elkaar overheen. Je wordt doorgestuurd";
}
}
else {
header('Refresh: 3; url=registreer.php');
echo 'Er is iets niet goed gegaan, herstel de fouten!';
}
}
else
{
header('Refresh: 3; url=login.php');
echo 'Een veld is niet ingevuld!';
}
header('Refresh: 3; url=login.php');
echo 'Je bent succesvol geregistreerd. Je wordt doorgestuurd.';
?>
/**
* @author Timo
* @copyright 2011
*
CREATE TABLE klanten
(
id int AUTO_INCREMENT PRIMARY KEY NOT NULL,
gebruikersnaam varchar(30) NOT NULL,
wachtwoord varchar(50) NOT NULL,
email varchar (70) NOT NULL,
voornaam varchar(20) NOT NULL,
achternaam varchar(50) NOT NULL,
adres varchar(50) NOT NULL,
postcode varchar(6) NOT NULL,
woonplaats varchar(30) NOT NULL,
telefoon varchar(15) NOT NULL,
klantengroep varchar(20) NOT NULL DEFAULT 'papier',
korting int NOT NULL DEFAULT '0',
rechten varchar(10) NOT NULL DEFAULT 'gebruiker'
)
CREATE TABLE klantengroep
(
code varchar(20) NOT NULL,
korting int NOT NULL
)
*
*/
$gebruikersnaam = strtolower($_POST['gebruikersnaam']);
$wachtwoord = md5($_POST['wachtwoord']);
$postcode = trim($_POST['postcode']);
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
if(isset($_POST['gebruikersnaam'], $_POST['wachtwoord'], $_POST['herhaalwachtwoord'], $_POST['email'], $_POST['voornaam'], $_POST['achternaam'], $_POST['adres'], $_POST['postcode'], $_POST['woonplaats'], $_POST['telefoon']))
{
if($_POST['wachtwoord'] == $_POST['herhaalwachtwoord']) {
$con = mysql_connect("localhost","***","***");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("bestel", $con);
$sql="INSERT INTO klanten (id, gebruikersnaam, wachtwoord, email, voornaam, achternaam, adres, postcode, woonplaats, telefoon)
VALUES
('','$gebruikersnaam','$wachtwoord','$_POST[email]','$_POST[voornaam]','$_POST[achternaam]','$_POST[adres]','$postcode','$_POST[woonplaats]','$_POST[telefoon]')";
if (!mysql_query($sql,$con))
{
die('Error: ' . mysql_error());
}
mysql_close($con);
}
else {
header('Refresh: 3; url=registreer.php');
echo "De wachtwoorden komen niet met elkaar overheen. Je wordt doorgestuurd";
}
}
else {
header('Refresh: 3; url=registreer.php');
echo 'Er is iets niet goed gegaan, herstel de fouten!';
}
}
else
{
header('Refresh: 3; url=login.php');
echo 'Een veld is niet ingevuld!';
}
header('Refresh: 3; url=login.php');
echo 'Je bent succesvol geregistreerd. Je wordt doorgestuurd.';
?>
registreer.php (formulier)
Code (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
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
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
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Registreren</title>
</head>
<body>
<h1>Registreren</h1>
<form method="post" action="registreer_module.php">
<table border="0">
<tr>
<td>
<label for="gebruikersnaam">Gebruikersnaam:</label>
</td>
<td>
<input type="text" name="gebruikersnaam" id="gebruikersnaam" />
</td>
</tr>
<tr>
<td>
<label for="wachtwoord">Wachtwoord:</label>
</td>
<td>
<input type="password" name="wachtwoord" id="wachtwoord" />
</td>
</tr>
<tr>
<td>
<label for="herhaalwachtwoord">Herhaal Wachtwoord:</label>
</td>
<td>
<input type="password" name="herhaalwachtwoord" id="herhaalwachtwoord" />
</td>
</tr>
<tr>
<td>
<label for="email">E-mail:</label>
</td>
<td>
<input type="text" name="email" id="email" />
</td>
</tr>
<tr>
<td>
<label for="voornaam">Voornaam:</label>
</td>
<td>
<input type="text" name="voornaam" id="voornaam" />
</td>
</tr>
<tr>
<td>
<label for="achternaam">Achternaam:</label>
</td>
<td>
<input type="text" name="achternaam" id="achternaam" />
</td>
</tr>
<tr>
<td>
<label for="adres">Adres:</label>
</td>
<td>
<input type="text" name="adres" id="adres" />
</td>
</tr>
<tr>
<td>
<label for="postcode">Postcode:</label>
</td>
<td>
<input type="text" name="postcode" id="postcode" />
</td>
</tr>
<tr>
<td>
<label for="woonplaats">Woonplaats:</label>
</td>
<td>
<input type="text" name="woonplaats" id="woonplaats" />
</td>
</tr>
<tr>
<td>
<label for="telefoon">Telefoon:</label>
</td>
<td>
<input type="text" name="telefoon" id="telefoon" />
</td>
</tr>
<tr>
<td>
<input type="submit" value="Registreer" />
</td>
</tr>
</table>
</form>
</body>
</html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Registreren</title>
</head>
<body>
<h1>Registreren</h1>
<form method="post" action="registreer_module.php">
<table border="0">
<tr>
<td>
<label for="gebruikersnaam">Gebruikersnaam:</label>
</td>
<td>
<input type="text" name="gebruikersnaam" id="gebruikersnaam" />
</td>
</tr>
<tr>
<td>
<label for="wachtwoord">Wachtwoord:</label>
</td>
<td>
<input type="password" name="wachtwoord" id="wachtwoord" />
</td>
</tr>
<tr>
<td>
<label for="herhaalwachtwoord">Herhaal Wachtwoord:</label>
</td>
<td>
<input type="password" name="herhaalwachtwoord" id="herhaalwachtwoord" />
</td>
</tr>
<tr>
<td>
<label for="email">E-mail:</label>
</td>
<td>
<input type="text" name="email" id="email" />
</td>
</tr>
<tr>
<td>
<label for="voornaam">Voornaam:</label>
</td>
<td>
<input type="text" name="voornaam" id="voornaam" />
</td>
</tr>
<tr>
<td>
<label for="achternaam">Achternaam:</label>
</td>
<td>
<input type="text" name="achternaam" id="achternaam" />
</td>
</tr>
<tr>
<td>
<label for="adres">Adres:</label>
</td>
<td>
<input type="text" name="adres" id="adres" />
</td>
</tr>
<tr>
<td>
<label for="postcode">Postcode:</label>
</td>
<td>
<input type="text" name="postcode" id="postcode" />
</td>
</tr>
<tr>
<td>
<label for="woonplaats">Woonplaats:</label>
</td>
<td>
<input type="text" name="woonplaats" id="woonplaats" />
</td>
</tr>
<tr>
<td>
<label for="telefoon">Telefoon:</label>
</td>
<td>
<input type="text" name="telefoon" id="telefoon" />
</td>
</tr>
<tr>
<td>
<input type="submit" value="Registreer" />
</td>
</tr>
</table>
</form>
</body>
</html>
Hopelijk kunnen jullie helpen, THANKS!!
Gewijzigd op 12/04/2011 19:27:09 door Timo Kleinhout
De volgorde is niet logisch: Je doet eerst iets met een POST-waarde en pas daarna kijk je of er iets gePOST is.
Nette foutafhandeling ontbreekt.
Script is lek => SQL-Injection.
Spring netjes in, nu is het niet duidelijk welke else bij welke if() hoort.
Gewijzigd op 12/04/2011 19:20:47 door - SanThe -
- SanThe - op 12/04/2011 19:19:48:
Haal je databaseinloggegevens uit je post. GEDAAN
De volgorde is niet logisch: Je doet eerst iets met een POST-waarde en pas daarna kijk je of er iets gePOST is.
Nette foutafhandeling ontbreekt. WAT BEDOEL JE HIERMEE?
Script is lek => SQL-Injection. GEDAAN
Spring netjes in, nu is het niet duidelijk welke else bij welke if() hoort. GEDAAN
Maar....... het is me al gelukt ;-) ik heb isset() veranderd in empty(), nu doet ie het wel, bedankt voor de moeite!!
De volgorde is niet logisch: Je doet eerst iets met een POST-waarde en pas daarna kijk je of er iets gePOST is.
Nette foutafhandeling ontbreekt. WAT BEDOEL JE HIERMEE?
Script is lek => SQL-Injection. GEDAAN
Spring netjes in, nu is het niet duidelijk welke else bij welke if() hoort. GEDAAN
Maar....... het is me al gelukt ;-) ik heb isset() veranderd in empty(), nu doet ie het wel, bedankt voor de moeite!!
Timo Kleinhout op 12/04/2011 20:12:09:
Nette foutafhandeling ontbreekt. WAT BEDOEL JE HIERMEE?
Foutafhandeling.