Form weglaten
Dit is mijn code, nu geeft hij de foutmelding onder het formulier weer, maar ik wil alleen de foutmelding zien.
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
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
<body>
<form action="register.php" method="POST">
<label for="naam">Gebruikersnaam:</label>
<input style="margin-left:70px;" type="text" name="naam" id="naam"/> <br />
<label for="wachtwoord">Wachtwoord:</label>
<input style="margin-left:89px;" type="password" name="wachtwoord" id="wachtwoord"/><br />
<label for="wachtwoord2">Wachtwoord bevestigen:</label>
<input style="margin-left:22px;" type="password" name="wachtwoord2" id="wachtwoord2"/><br />
<input style="margin-left:251px;" type="submit" name="submit" value="Aanmelden"/>
</form>
<?php
if($_SERVER['REQUEST_METHOD'] == "POST")
{
$error = array();
if($_POST['wachtwoord'] == $_POST['wachtwoord2'])
{
$username = $_POST['naam'];
$password = md5($_POST['wachtwoord']);
}
else
{
$error[] = "De wachtwoorden komen niet overeen";
}
if(count($error) > 0)
{
foreach($error as $errors)
{
echo $errors;
}
}
}
?>
</body>
<form action="register.php" method="POST">
<label for="naam">Gebruikersnaam:</label>
<input style="margin-left:70px;" type="text" name="naam" id="naam"/> <br />
<label for="wachtwoord">Wachtwoord:</label>
<input style="margin-left:89px;" type="password" name="wachtwoord" id="wachtwoord"/><br />
<label for="wachtwoord2">Wachtwoord bevestigen:</label>
<input style="margin-left:22px;" type="password" name="wachtwoord2" id="wachtwoord2"/><br />
<input style="margin-left:251px;" type="submit" name="submit" value="Aanmelden"/>
</form>
<?php
if($_SERVER['REQUEST_METHOD'] == "POST")
{
$error = array();
if($_POST['wachtwoord'] == $_POST['wachtwoord2'])
{
$username = $_POST['naam'];
$password = md5($_POST['wachtwoord']);
}
else
{
$error[] = "De wachtwoorden komen niet overeen";
}
if(count($error) > 0)
{
foreach($error as $errors)
{
echo $errors;
}
}
}
?>
</body>
En dan is het vreemd dat je het nu opnieuw vraagt?
Ik geef een hint, maar dat is dan ook echt een laatste hint:
Gewijzigd op 04/11/2011 10:14:36 door - Ariën -
Dankje
Toevoeging op 04/11/2011 10:31:01:
EDIT:
is de md5 zo goed?
En gebruik bij voorkeur geen MD5, maar sha1, met een 'salt'-string, als je het heel veilig wilt hebben.
sha1($_POST['wachtwoord'])
en een salt-string erbij, voor de veiligheid.
ik weet niet precies wat je bedoelt. Op internet wordt er gezegt bij salt-string, een crypt? kan dat?
Zo heeft een gebruiker bijv. als passwoord: boom, en jij hebt dan als salt bijv.: *(yuh78*, dan wordt het uiteindelijke password welke als sha1() in de database gaat: boom*(yuh78*.
Zo wordt voorkomen dat met SHA1() dictionary-tables ge-brute-forced kan wordne op een wachtwoord. Boom zou vast wel bestaan, maar boom*(yuh78* vast weer niet ;-).
Gewijzigd op 04/11/2011 10:52:01 door - Ariën -
Nu zit ik met het volgende, ik wil 2 variabelen bekijken of er één ervan leeg is, zo ja dat moet er een melding komen.
if(empty($_POST['naam'] || $_POST['wachtwoord']))
{
echo "Iets is leeg";
}
Maar dit accepteerd hij niet.
Toevoeging op 04/11/2011 11:02:21:
ik heb het al, het moest op deze manier:
if(empty($_POST['naam']) || empty($_POST['wachtwoord']))
{
echo "Iets is leeg";
}
Toevoeging op 04/11/2011 11:44:10:
Waarom doet mijn count het niet?? :O
ik doe dit:
hij moet dus de $error optellen en als er meer dan 1 error is, moet hij die bovenste pakken, anders die onderste. Wat ik ook probeer hij doet niets, ook niet als ik dit doe:
of dit:
Toevoeging op 04/11/2011 12:11:56:
Vraagje tussendoor, is dit zo correct?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
if(empty($_POST['naam']))
{
$error[] = "U heeft uw gebruikers naam niet ingevuld";
}
if(empty($_POST['wachtwoord']))
{
$error[] = "U heeft het eerste wachtwoord niet ingevuld";
}
if(empty($_POST['wachtwoord2']))
{
$error[] = "U heeft het tweede wachtwoord niet ingevuld";
}
{
$error[] = "U heeft uw gebruikers naam niet ingevuld";
}
if(empty($_POST['wachtwoord']))
{
$error[] = "U heeft het eerste wachtwoord niet ingevuld";
}
if(empty($_POST['wachtwoord2']))
{
$error[] = "U heeft het tweede wachtwoord niet ingevuld";
}
if(count($error) > 1)