hulp bij inlogsysteem
Ik zal het even kort uitleggen. Hier onder staat een voorbeeldje, deel ervan..
Wat mijn vraag nu is hoe kan ik zorgen dat gegeven 1, gegeven 2, gegeven 3 en gegeven 4 samen moet vallen
met wat er in de controle staat, waarbij bij gegeven 4 iets moet worden ingetypt,
anders kan de registratie niet voltooid worden. Dus ff voor de verduideling met een vb.:
In de controle staat dat je alleen kunt registreren als je bij gegeven 1, "AA" kiest, bij gegeven 2, "BB"
kiest, bij gegeven 3, "CC" kiest en bij gegeven 4 "hallo" intypt.
Als dat wordt gekozen/ingetypt dan is dat onderdeel foutloos. Bij al het andere dat wordt ingetypt is het
niet mogelijk om te registreren.
Mijn vraag is nu HOE ziet die controle er uit. Ik dacht zelf iets van (een deel) of ipv == !:
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
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
<?php>
...........
...........
($_POST['gegegen1'] == "1" && $_POST['gegeven2'] == "2" && $_POST['gegeven3'] == "3" &&
$_POST['gegeven4'] == "hallo" )
...........
...........
<?>
Weet iemand hoe dit wel moet....
Kalle.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Untitled Document</title>
</head>
<body>
<table border="0">
<tr >
<td>gegeven 1:</td>
<td >
<select name="letters1" id="letters1" >
<option value="0" ></option>
<option value="1">AA</option>
<option value="2">BB</option>
<option value="3">CC</option>
<option value="4">DD</option>
<option value="5">EE</option>
</select>
</td>
</tr>
<tr >
<td>gegeven 2:</td>
<td >
<select name="letters2" id="letters2" >
<option value="0" ></option>
<option value="1">AA</option>
<option value="2">BB</option>
<option value="3">CC</option>
<option value="4">DD</option>
<option value="5">EE</option>
</select>
</td>
</tr>
<tr >
<td>gegeven 3:</td>
<td >
<select name="letters3" id="letters4" >
<option value="0" ></option>
<option value="1">AA</option>
<option value="2">BB</option>
<option value="3">CC</option>
<option value="4">DD</option>
<option value="5">EE</option>
</select>
</td>
</tr>
<tr>
<td>gegeven 4:</td>
<td><input name="gegeven4" type="text" id="gegeven4" size="35"></td>
</tr>
<tr>
</table>
</body>
</html>
...........
...........
($_POST['gegegen1'] == "1" && $_POST['gegeven2'] == "2" && $_POST['gegeven3'] == "3" &&
$_POST['gegeven4'] == "hallo" )
...........
...........
<?>
Weet iemand hoe dit wel moet....
Kalle.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Untitled Document</title>
</head>
<body>
<table border="0">
<tr >
<td>gegeven 1:</td>
<td >
<select name="letters1" id="letters1" >
<option value="0" ></option>
<option value="1">AA</option>
<option value="2">BB</option>
<option value="3">CC</option>
<option value="4">DD</option>
<option value="5">EE</option>
</select>
</td>
</tr>
<tr >
<td>gegeven 2:</td>
<td >
<select name="letters2" id="letters2" >
<option value="0" ></option>
<option value="1">AA</option>
<option value="2">BB</option>
<option value="3">CC</option>
<option value="4">DD</option>
<option value="5">EE</option>
</select>
</td>
</tr>
<tr >
<td>gegeven 3:</td>
<td >
<select name="letters3" id="letters4" >
<option value="0" ></option>
<option value="1">AA</option>
<option value="2">BB</option>
<option value="3">CC</option>
<option value="4">DD</option>
<option value="5">EE</option>
</select>
</td>
</tr>
<tr>
<td>gegeven 4:</td>
<td><input name="gegeven4" type="text" id="gegeven4" size="35"></td>
</tr>
<tr>
</table>
</body>
</html>
Code (php)
Bij die echo's zet je dus neer wat er moet gebeuren.
groet
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
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
<?php } else {
$error = array();
if(!check_email($_POST['email'])) {
$error[] = 'Er is geen geldig e-mailadres ingevuld.';
}
if($_POST['gebruikersnaam'] == "") {
$error[] = 'Er is geen gebruikersnaam ingevuld.';
}
if(!preg_match("/^[-_0-9a-z]{2,}$/i", $_POST['gebruikersnaam'])) {
$error[] = 'Een gebruikersnaam mag slechts alfanummerieke tekens bevatten (a-z, 0-9), underscore (_) of liggend streepje (-).';
}
if($_POST['wachtwoord'] == "" || $_POST['wachtwoord'] != $_POST['wachtwoord2']) {
$error[] = 'Er is geen wachtwoord ingevuld of de 2 wachtwoorden komen niet overeen.';
}
if(geregistreerd($_POST['gebruikersnaam'],gebruikersnaam)) {
$error[] = '<strong>'.$_POST['gebruikersnaam'].'</strong> is reeds geregistreerd.';
}
if(geregistreerd($_POST['email'],email)) {
$error[] = '<strong>'.$_POST['email'].'</strong> is reeds geregistreerd. Slechts één account per e-mailadres is toegestaan.';
}
$fouten = sizeof($error);
if($fouten != 0) {
echo 'Er kon geen account worden aangemaakt door (een van) de volgende reden(en):';
echo '<ul>';
for($i = 0; $i < $fouten; $i++) {
echo '<li>'.$error[$i].'</li>';
}
echo '</ul>';
} else {
$activatiecode = activatiecode($cfg['act_lengte']);
$tpl = new TemplatePower('mail.tpl');
$tpl->prepare();
$tpl->assign(array(
"site" => $cfg['site'],
"url" => $cfg['url'],
"gebruikersnaam" => $_POST['gebruikersnaam'],
"wachtwoord" => $_POST['wachtwoord'],
"code" => $activatiecode
));
$template = $tpl->getOutputContent();
$headers = "MIME-Version: 1.0\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\n";
$headers .= "From: ".$cfg['site']." <".$cfg['email'].">\n";
mail($_POST['email'],"Account op ".$cfg['site']." activeren",$template,$headers);
mysql_query("INSERT INTO leden_temp (gebruikersnaam,wachtwoord,datum,email,code) VALUES ('".$_POST['gebruikersnaam']."','".md5($_POST['wachtwoord'])."','".time()."','".$_POST['email']."','".$activatiecode."')");
?>
$error = array();
if(!check_email($_POST['email'])) {
$error[] = 'Er is geen geldig e-mailadres ingevuld.';
}
if($_POST['gebruikersnaam'] == "") {
$error[] = 'Er is geen gebruikersnaam ingevuld.';
}
if(!preg_match("/^[-_0-9a-z]{2,}$/i", $_POST['gebruikersnaam'])) {
$error[] = 'Een gebruikersnaam mag slechts alfanummerieke tekens bevatten (a-z, 0-9), underscore (_) of liggend streepje (-).';
}
if($_POST['wachtwoord'] == "" || $_POST['wachtwoord'] != $_POST['wachtwoord2']) {
$error[] = 'Er is geen wachtwoord ingevuld of de 2 wachtwoorden komen niet overeen.';
}
if(geregistreerd($_POST['gebruikersnaam'],gebruikersnaam)) {
$error[] = '<strong>'.$_POST['gebruikersnaam'].'</strong> is reeds geregistreerd.';
}
if(geregistreerd($_POST['email'],email)) {
$error[] = '<strong>'.$_POST['email'].'</strong> is reeds geregistreerd. Slechts één account per e-mailadres is toegestaan.';
}
$fouten = sizeof($error);
if($fouten != 0) {
echo 'Er kon geen account worden aangemaakt door (een van) de volgende reden(en):';
echo '<ul>';
for($i = 0; $i < $fouten; $i++) {
echo '<li>'.$error[$i].'</li>';
}
echo '</ul>';
} else {
$activatiecode = activatiecode($cfg['act_lengte']);
$tpl = new TemplatePower('mail.tpl');
$tpl->prepare();
$tpl->assign(array(
"site" => $cfg['site'],
"url" => $cfg['url'],
"gebruikersnaam" => $_POST['gebruikersnaam'],
"wachtwoord" => $_POST['wachtwoord'],
"code" => $activatiecode
));
$template = $tpl->getOutputContent();
$headers = "MIME-Version: 1.0\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\n";
$headers .= "From: ".$cfg['site']." <".$cfg['email'].">\n";
mail($_POST['email'],"Account op ".$cfg['site']." activeren",$template,$headers);
mysql_query("INSERT INTO leden_temp (gebruikersnaam,wachtwoord,datum,email,code) VALUES ('".$_POST['gebruikersnaam']."','".md5($_POST['wachtwoord'])."','".time()."','".$_POST['email']."','".$activatiecode."')");
?>
Dus nu mijn vraag: waar moet ik dat deel tussen zetten? En anders hoe te veranderen...
kalle
?
Stel dat we deze login.php noemen, dan zet je om de velden dit heen:
<form action="" enctype="multipart/form-data" method="post">
de velden
<input type="submit" name="submit">
</form>
Dan het script
Dat kan dus in 1 pagina, maar het script moet pas gaan werken wanneer het FORM gepost is, dus wanneer er submit is geklikt. Er moet dan wel een form zijn :)
Groet
Kalle