if..elseif..else of preg_match fout in code..?
als ik de preg_match formule in een kleine php file test is de notatie correct, dat wil zeggen dat ik alleen maar gebruikersnamen wil toestaant die bestaan uit letters en cijfers.
Echter wanneer ik deze toepas in mij code (aanmeldpagina) lijkt het alsof de code de controle negeert. Ook gebruikersnamen met bijvoorbeeld een & in de tekst komen er gewoon doorheen.
De hamvraag is waar dit nu aan ligt, waarschijnlijk een foutje in de if routine, maar ik zie hem niet!!!
wie kan me helpen?
alvast bedankt,
groet,
Marc
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
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
<?php
// als het formulier nog niet is ingevuld
if(!isset($_POST['submit'])) {
?>
<h3>Aanmeldpagina</h3>
<p> </p>
<p>U heeft nog geen eigen startpagina, u kunt zich hier registreren.</p>
<p> </p>
<form action="aanmeld.php" method="post">
<table width="500" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="200"><p>Gebruikersnaam</p></td>
<td width="300"><input type="text" name="naam" size="40" maxlength="20" /></td>
</tr>
<tr>
<td><p>Wachtwoord</p></td>
<td><input type="password" name="wacht1" size="40" maxlength="32" /></td>
</tr>
<tr>
<td><p>Wachtwoord opnieuw</p></td>
<td><input type="password" name="wacht2" size="40" maxlength="32" /></td>
</tr>
<tr>
<td><p>Voornaam</p></td>
<td><input type="text" name="voornaam" size="40" maxlength="20" /></td>
</tr>
<tr>
<td><p>Achternaam</p></td>
<td><input type="text" name="achternaam" size="40" maxlength="20" /></td>
</tr>
<tr>
<td><p>Email adres</td>
<td><input type="text" name="email" size="40" maxlength="128" /></td>
</tr>
</table>
<br />
<input type="submit" name="submit" value="Registreer" />
</form>
<?php
// formulier gepost, kijk of alle velden ook daadwerkelijk zijn ingevuld
} elseif(trim($_POST['naam']) <> "" && trim($_POST['wacht1']) <> "" && trim($_POST['voornaam']) <> "" && trim($_POST['achternaam']) <> "" && trim($_POST['email']) <> "") {
// formulier gepost, check op geldige gebruikersnaam
$naam=$_POST['naam'];
if(preg_match('/^[a-zA-Z0-9]+$/', $naam)) {
// formulier ingevuld - kijk eerst of de gebruiker al bestaat
$naam = $_POST['naam'];
$vnaam = $_POST['voornaam'];
$anaam = $_POST['achternaam'];
$res = mysql_query("SELECT * FROM users WHERE gebrnaam='".$naam."'") or die(mysql_error());
if(mysql_num_rows($res) == 0) {
// geen resultaten - dit is wat we willen
// kijk of de opgegeven wachtwoorden overeenkomen
if(!strcmp($_POST['wacht1'], $_POST['wacht2'])) {
// wachtwoorden komen overeen - sla alle gegevens op in de database
// naam is al opgehaald uit het formulier
$wacht = md5($_POST['wacht1']); // versleuteld wachtwoord
$email = $_POST['email'];
mysql_query("INSERT INTO users (gebrnaam, wwoord, vnaam, anaam, email) VALUES ('".$naam."','".$wacht."','".$vnaam."','".$anaam."','".$email."')") or die(mysql_error());
// geef melding weer
?>
<h3>Registratie geslaagd!</h3>
<p> </p>
<p>Bedankt voor uw registratie.</p>
<p> </p>
<p>
<meta http-equiv="refresh" content="10;url=http://<?=$naam?>.blommetje.nl/index" />
<a href="http://<?=$naam?>.blommetje.nl/index">Klik hier om naar uw startpagina te gaan.</a></p>
<p> </p>
<br />
<?php
} else {
// wachtwoorden komen niet overeen
?>
<p>De twee opgegeven wachtwoorden zijn niet hetzelfde.<br />
Druk op de "back" knop van je browser en voer twee identieke wachtwoorden in.</p>
<br />
<?php
}
} else {
// er bestaat al een gebruiker met deze naam
?>
<p>Er bestaat al een gebruiker met deze naam.<br />
Druk op de "back" knop van je browser en geef een andere naam op.</p>
<br />
<?php
}
} else {
// ongeldige gebruikersnaam
?>
<p>Gebruikersnaam is ongeldig.<br />
Druk op de "back" knop van je browser en geef een andere naam op.</p>
<br />
<?php
}
} else {
// sommige velden zijn niet ingevuld
?>
<p>Alle velden dienen ingevuld te worden.<br />
Druk op de "back" toets en vul in alle velden wat in.</p>
<br />
<?php
}
?>
// als het formulier nog niet is ingevuld
if(!isset($_POST['submit'])) {
?>
<h3>Aanmeldpagina</h3>
<p> </p>
<p>U heeft nog geen eigen startpagina, u kunt zich hier registreren.</p>
<p> </p>
<form action="aanmeld.php" method="post">
<table width="500" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="200"><p>Gebruikersnaam</p></td>
<td width="300"><input type="text" name="naam" size="40" maxlength="20" /></td>
</tr>
<tr>
<td><p>Wachtwoord</p></td>
<td><input type="password" name="wacht1" size="40" maxlength="32" /></td>
</tr>
<tr>
<td><p>Wachtwoord opnieuw</p></td>
<td><input type="password" name="wacht2" size="40" maxlength="32" /></td>
</tr>
<tr>
<td><p>Voornaam</p></td>
<td><input type="text" name="voornaam" size="40" maxlength="20" /></td>
</tr>
<tr>
<td><p>Achternaam</p></td>
<td><input type="text" name="achternaam" size="40" maxlength="20" /></td>
</tr>
<tr>
<td><p>Email adres</td>
<td><input type="text" name="email" size="40" maxlength="128" /></td>
</tr>
</table>
<br />
<input type="submit" name="submit" value="Registreer" />
</form>
<?php
// formulier gepost, kijk of alle velden ook daadwerkelijk zijn ingevuld
} elseif(trim($_POST['naam']) <> "" && trim($_POST['wacht1']) <> "" && trim($_POST['voornaam']) <> "" && trim($_POST['achternaam']) <> "" && trim($_POST['email']) <> "") {
// formulier gepost, check op geldige gebruikersnaam
$naam=$_POST['naam'];
if(preg_match('/^[a-zA-Z0-9]+$/', $naam)) {
// formulier ingevuld - kijk eerst of de gebruiker al bestaat
$naam = $_POST['naam'];
$vnaam = $_POST['voornaam'];
$anaam = $_POST['achternaam'];
$res = mysql_query("SELECT * FROM users WHERE gebrnaam='".$naam."'") or die(mysql_error());
if(mysql_num_rows($res) == 0) {
// geen resultaten - dit is wat we willen
// kijk of de opgegeven wachtwoorden overeenkomen
if(!strcmp($_POST['wacht1'], $_POST['wacht2'])) {
// wachtwoorden komen overeen - sla alle gegevens op in de database
// naam is al opgehaald uit het formulier
$wacht = md5($_POST['wacht1']); // versleuteld wachtwoord
$email = $_POST['email'];
mysql_query("INSERT INTO users (gebrnaam, wwoord, vnaam, anaam, email) VALUES ('".$naam."','".$wacht."','".$vnaam."','".$anaam."','".$email."')") or die(mysql_error());
// geef melding weer
?>
<h3>Registratie geslaagd!</h3>
<p> </p>
<p>Bedankt voor uw registratie.</p>
<p> </p>
<p>
<meta http-equiv="refresh" content="10;url=http://<?=$naam?>.blommetje.nl/index" />
<a href="http://<?=$naam?>.blommetje.nl/index">Klik hier om naar uw startpagina te gaan.</a></p>
<p> </p>
<br />
<?php
} else {
// wachtwoorden komen niet overeen
?>
<p>De twee opgegeven wachtwoorden zijn niet hetzelfde.<br />
Druk op de "back" knop van je browser en voer twee identieke wachtwoorden in.</p>
<br />
<?php
}
} else {
// er bestaat al een gebruiker met deze naam
?>
<p>Er bestaat al een gebruiker met deze naam.<br />
Druk op de "back" knop van je browser en geef een andere naam op.</p>
<br />
<?php
}
} else {
// ongeldige gebruikersnaam
?>
<p>Gebruikersnaam is ongeldig.<br />
Druk op de "back" knop van je browser en geef een andere naam op.</p>
<br />
<?php
}
} else {
// sommige velden zijn niet ingevuld
?>
<p>Alle velden dienen ingevuld te worden.<br />
Druk op de "back" toets en vul in alle velden wat in.</p>
<br />
<?php
}
?>
Gewijzigd op 01/01/1970 01:00:00 door Marc Blom
code tags
sorry zag het ook al, alles staat nu tussen de code tags...
Begin maar met code overzichtelijk te maken want hier kan niemand (niemand == ik in dit geval) tabak van maken
mysql_real_escape_string.
Edit: En $vars gewoon in een andere $var kopiëren is zinloos en kost alleen maar extra geheugen. Voorbeeld: $naam = $_POST['naam'];
En lees eens wat over sql-injection en kijk eens bij Edit: En $vars gewoon in een andere $var kopiëren is zinloos en kost alleen maar extra geheugen. Voorbeeld: $naam = $_POST['naam'];
Gewijzigd op 01/01/1970 01:00:00 door - SanThe -
<p>Gebruikersnaam is ongeldig.<br />
Druk op de "back" knop van je browser en geef een andere naam op.</p>
<br />
Zelfs als je namen met vreemde tekens gebruikt. Klopt dit?
@jacco en santhe: ben een beginner, dus zal er nog eens goed naar kijken met jullie opmerking, dank daarvoor!
groet,
Marc
Je kan zelf karakters toevoegen als je wil. Zoals het nu is, krijg je ook een false als je een spatie invult.
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
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?
if ( enkel_letters_of_cijfers($naam) )
{
///...
}
// ...
function enkel_letters_of_cijfers($string)
{
$letters = " abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
$resultaat = '';
$lengte = strlen($string);
for ($i=0; $i < $lengte ; $i++)
{
if ( strrpos($letters, $string{$i}, 0) )
{
$resultaat = $resultaat . $string{$i};
}
else
return 0;
}
return 1;
}
?>
if ( enkel_letters_of_cijfers($naam) )
{
///...
}
// ...
function enkel_letters_of_cijfers($string)
{
$letters = " abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
$resultaat = '';
$lengte = strlen($string);
for ($i=0; $i < $lengte ; $i++)
{
if ( strrpos($letters, $string{$i}, 0) )
{
$resultaat = $resultaat . $string{$i};
}
else
return 0;
}
return 1;
}
?>
Gewijzigd op 01/01/1970 01:00:00 door Emmanuel Delay
thanks!
Marc
Gewijzigd op 01/01/1970 01:00:00 door Jacco Engel
Je if/then/else blokken zijn erg genest, maar je ziet niet goed welke blok bij wat hoort.
Het feit dat je telkens in en uit je php gaat ( ), maakt het lastig.
Ik zet altijd de accolades die bij mekaar passen recht onder mekaar. De meesten doen dat niet (elk zijn smaak), maar ik zal daar nooit van afwijken (voor persoonlijk gebruik).
Het aantal spaties (of tabs) die voor een accolade staan, tonen bij mij onmiddellijk tot welke diepte de blok code genest is.
Zijn er verder eigenlijk nog problemen of werkt het ondertussen?
Heb zelf ook al aan een opzet zoals hieronder zitten denken:
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
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
<?php
// form niet ingevuld
if(!isset($_POST['submit']))
{
routine en html aanmeldpagina
}
elseif -- conditie lege velden --
{
$fout="lege velden";
}
elseif -- conditie ongeldige gebruikersnaam --
{
$fout="ongeldige gebruikersnaam";
}
elseif -- conditie bestaande gebruikersnaam --
{
$fout="bestaande gebruikersnaam";
}
elseif -- conditie zelfde wachtwoord --
{
$fout="wachtwoord komt niet overeen";
}
else
{
routine registratie en redirect naar inlogpagina
}
echo $fout;
?>
// form niet ingevuld
if(!isset($_POST['submit']))
{
routine en html aanmeldpagina
}
elseif -- conditie lege velden --
{
$fout="lege velden";
}
elseif -- conditie ongeldige gebruikersnaam --
{
$fout="ongeldige gebruikersnaam";
}
elseif -- conditie bestaande gebruikersnaam --
{
$fout="bestaande gebruikersnaam";
}
elseif -- conditie zelfde wachtwoord --
{
$fout="wachtwoord komt niet overeen";
}
else
{
routine registratie en redirect naar inlogpagina
}
echo $fout;
?>
==========
is zoiets een logischere opbouw of ben ik nu helemaal de weg kwijt en moet ik straks tijdens mijn vakantie eerst het boek voor dummies maar eens uitlezen :-)
ik hoor graag van jullie en wederom dank voor het meedenken en willen helpen!!!
groet,
Marc
Gewijzigd op 01/01/1970 01:00:00 door Marc Blom
groet/marc
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
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
<?php
// form ingevuld
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
$fout = array();
if -- conditie lege velden --
{
$fout[]="lege velden";
}
if -- conditie ongeldige gebruikersnaam --
{
$fout[]="ongeldige gebruikersnaam";
}
if -- conditie bestaande gebruikersnaam --
{
$fout[]="bestaande gebruikersnaam";
}
if -- conditie zelfde wachtwoord --
{
$fout[]="wachtwoord komt niet overeen";
}
if(empty($fout))
{
// verwerken en header naar waar dan ook
}
}
foreach($fout as $value)
{
echo $value . '<br/>';
}
// formulier
?>
// form ingevuld
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
$fout = array();
if -- conditie lege velden --
{
$fout[]="lege velden";
}
if -- conditie ongeldige gebruikersnaam --
{
$fout[]="ongeldige gebruikersnaam";
}
if -- conditie bestaande gebruikersnaam --
{
$fout[]="bestaande gebruikersnaam";
}
if -- conditie zelfde wachtwoord --
{
$fout[]="wachtwoord komt niet overeen";
}
if(empty($fout))
{
// verwerken en header naar waar dan ook
}
}
foreach($fout as $value)
{
echo $value . '<br/>';
}
// formulier
?>
zal wel morgenochten worden als ik dit af heb, maar meld me zeker weer! mischien doe ik eens gek en gaat het nog lukken vanavond.
bedankt voor je input!
Marc
enorm bedankt voor jullie input en adviezen. Heb de code werkend! De code is redelijk dichtbij de basis gebleven, maar zonder jullie tips en aanwijzingen was het me niet gelukt.
De oplossing zat hem vooral in het netjes weergeven van de code en met name de lussen, zoals ook al door jullie aangegeven (overzichtelijk code maken).
Alle tips hierboven gegeven heb ik uitgeprint en ga ik tijdens mijn vakantie bestuderen zodat ik er van kan leren!
Ik hoop in de toekomst, en dat zal wel nodig zijn, nog eens een beroep op jullie te mogen doen.
De code wil ik jullie niet onthouden, ondanks dat er volgens jullie ongetwijfeld nog verbeteringen kunnen zijn.
Marc.
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
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
<?php
// als het formulier nog niet is ingevuld
if(!isset($_POST['submit']))
{
?>
<h3>Aanmeldpagina</h3>
<p> </p>
<p>U heeft nog geen eigen startpagina, u kunt zich hier registreren.</p>
<p> </p>
<form action="aanmeld.php" method="post">
<table width="500" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="200"><p>Gebruikersnaam</p></td>
<td width="300"><input type="text" name="naam" size="40" maxlength="20" /></td>
</tr>
<tr>
<td><p>Wachtwoord</p></td>
<td><input type="password" name="wacht1" size="40" maxlength="32" /></td>
</tr>
<tr>
<td><p>Wachtwoord opnieuw</p></td>
<td><input type="password" name="wacht2" size="40" maxlength="32" /></td>
</tr>
<tr>
<td><p>Voornaam</p></td>
<td><input type="text" name="vnaam" size="40" maxlength="20" /></td>
</tr>
<tr>
<td><p>Achternaam</p></td>
<td><input type="text" name="anaam" size="40" maxlength="20" /></td>
</tr>
<tr>
<td><p>Email adres</td>
<td><input type="text" name="email" size="40" maxlength="128" /></td>
</tr>
</table>
<br />
<input type="submit" name="submit" value="Registreer" />
</form>
<?php
}
else
{
// formulier gepost, kijk of alle velden ook daadwerkelijk zijn ingevuld
if(trim($_POST['naam']) <> "" && trim($_POST['wacht1']) <> "" && trim($_POST['wacht2']) <> "" && trim ($_POST['vnaam']) <> "" && trim ($_POST['anaam']) <> "" && trim($_POST['email']) <> "")
{
// formulier ingevuld - controleer op geldige gebruikersnaam
if(preg_match('/^[a-zA-Z0-9]+$/', $_POST['naam']))
{
// formulier ingevuld - kijk eerst of de gebruiker al bestaat
$res = mysql_query("SELECT * FROM users WHERE gebrnaam='".$_POST['naam']."'") or die(mysql_error());
if(mysql_num_rows($res) == 0)
{
// kijk of de opgegeven wachtwoorden overeenkomen
if(!strcmp($_POST['wacht1'], $_POST['wacht2']))
{
// wachtwoorden komen overeen - sla alle gegevens op in de database
mysql_query("INSERT INTO users (gebrnaam, wwoord, vnaam, anaam, email) VALUES ('".$_POST['naam']."','".md5($_POST['wacht1'])."','".$_POST['vnaam']."','".$_POST['anaam']."','".$_POST['email']."')") or die(mysql_error());
// geef melding weer
?>
<h3>Registratie geslaagd!</h3>
<p> </p>
<p>Bedankt voor uw registratie.</p>
<p><meta http-equiv="refresh" content="10;url=http://<?=$_POST['naam']?>.blommetje.nl/index" /><a href="http://<?=$_POST['naam']?>.blommetje.nl/index">Klik hier om naar uw startpagina te gaan.</a></p>
<p> </p>
<?php
}
else
{
// wachtwoorden komen niet overeen
?>
<h3>Fout</h3>
<p> </p>
<p>De twee opgegeven wachtwoorden zijn niet hetzelfde.</p>
<p>Druk op de "back" knop van je browser en voer twee identieke wachtwoorden in.</p>
<?php
}
}
else
{
// bestaande gebruiker
?>
<h3>Fout</h3>
<p> </p>
<p>Er bestaat al een gebruiker met deze naam.</p>
<p>Druk op de "back" knop van je browser en geef een andere naam op.</p>
<?php
}
}
else
{
// ongeldige gebruikersnaam
?>
<h3>Fout</h3>
<p> </p>
<p>Er is een ongeldige gebruikersnaam ingevoerd. U kunt alleen letters en cijfers gebruiken.</p>
<p>Druk op de "back" knop van je browser en geef een geldige naam op.</p>
<?php
}
}
else
{
// sommige velden zijn niet ingevuld
?>
<h3>Fout</h3>
<p> </p>
<p>Alle velden dienen ingevuld te worden.</p>
<p>Druk op de "back" toets en vul in alle velden wat in.</p>
<?php
}
}
?>
// als het formulier nog niet is ingevuld
if(!isset($_POST['submit']))
{
?>
<h3>Aanmeldpagina</h3>
<p> </p>
<p>U heeft nog geen eigen startpagina, u kunt zich hier registreren.</p>
<p> </p>
<form action="aanmeld.php" method="post">
<table width="500" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="200"><p>Gebruikersnaam</p></td>
<td width="300"><input type="text" name="naam" size="40" maxlength="20" /></td>
</tr>
<tr>
<td><p>Wachtwoord</p></td>
<td><input type="password" name="wacht1" size="40" maxlength="32" /></td>
</tr>
<tr>
<td><p>Wachtwoord opnieuw</p></td>
<td><input type="password" name="wacht2" size="40" maxlength="32" /></td>
</tr>
<tr>
<td><p>Voornaam</p></td>
<td><input type="text" name="vnaam" size="40" maxlength="20" /></td>
</tr>
<tr>
<td><p>Achternaam</p></td>
<td><input type="text" name="anaam" size="40" maxlength="20" /></td>
</tr>
<tr>
<td><p>Email adres</td>
<td><input type="text" name="email" size="40" maxlength="128" /></td>
</tr>
</table>
<br />
<input type="submit" name="submit" value="Registreer" />
</form>
<?php
}
else
{
// formulier gepost, kijk of alle velden ook daadwerkelijk zijn ingevuld
if(trim($_POST['naam']) <> "" && trim($_POST['wacht1']) <> "" && trim($_POST['wacht2']) <> "" && trim ($_POST['vnaam']) <> "" && trim ($_POST['anaam']) <> "" && trim($_POST['email']) <> "")
{
// formulier ingevuld - controleer op geldige gebruikersnaam
if(preg_match('/^[a-zA-Z0-9]+$/', $_POST['naam']))
{
// formulier ingevuld - kijk eerst of de gebruiker al bestaat
$res = mysql_query("SELECT * FROM users WHERE gebrnaam='".$_POST['naam']."'") or die(mysql_error());
if(mysql_num_rows($res) == 0)
{
// kijk of de opgegeven wachtwoorden overeenkomen
if(!strcmp($_POST['wacht1'], $_POST['wacht2']))
{
// wachtwoorden komen overeen - sla alle gegevens op in de database
mysql_query("INSERT INTO users (gebrnaam, wwoord, vnaam, anaam, email) VALUES ('".$_POST['naam']."','".md5($_POST['wacht1'])."','".$_POST['vnaam']."','".$_POST['anaam']."','".$_POST['email']."')") or die(mysql_error());
// geef melding weer
?>
<h3>Registratie geslaagd!</h3>
<p> </p>
<p>Bedankt voor uw registratie.</p>
<p><meta http-equiv="refresh" content="10;url=http://<?=$_POST['naam']?>.blommetje.nl/index" /><a href="http://<?=$_POST['naam']?>.blommetje.nl/index">Klik hier om naar uw startpagina te gaan.</a></p>
<p> </p>
<?php
}
else
{
// wachtwoorden komen niet overeen
?>
<h3>Fout</h3>
<p> </p>
<p>De twee opgegeven wachtwoorden zijn niet hetzelfde.</p>
<p>Druk op de "back" knop van je browser en voer twee identieke wachtwoorden in.</p>
<?php
}
}
else
{
// bestaande gebruiker
?>
<h3>Fout</h3>
<p> </p>
<p>Er bestaat al een gebruiker met deze naam.</p>
<p>Druk op de "back" knop van je browser en geef een andere naam op.</p>
<?php
}
}
else
{
// ongeldige gebruikersnaam
?>
<h3>Fout</h3>
<p> </p>
<p>Er is een ongeldige gebruikersnaam ingevoerd. U kunt alleen letters en cijfers gebruiken.</p>
<p>Druk op de "back" knop van je browser en geef een geldige naam op.</p>
<?php
}
}
else
{
// sommige velden zijn niet ingevuld
?>
<h3>Fout</h3>
<p> </p>
<p>Alle velden dienen ingevuld te worden.</p>
<p>Druk op de "back" toets en vul in alle velden wat in.</p>
<?php
}
}
?>
Gewijzigd op 01/01/1970 01:00:00 door Marc Blom
Hoe ik controles altijd doe, is een array aanmaken, dan alle controles doen, en eventuele fouten in de array en dan kijken op het eind.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
dank voor je aanvulling; volgens mij lijkt deze oplossing op die van SanThe. Kwam daar nog niet helemaal uit mijn html er tussendoor, vandaar dat ik voorlopig daar even op voorborduurde, maar ga er zeker naar kijken.
Marc
Sla dat van mij maar over dan ja ;P