Aanmelden.php !
Ik heb een login script maar aanmelden.php doe het gewoon niet!
Zelf veel gekloot! En daar kwam dit uit:
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
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
<?PHP
error_reporting(E_ALL);
ini_set("display_errors", 1);
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=iso-8859-2" http-equiv="Content-Type">
<meta http-equiv="Content-Language" content="nl">
<link rel="stylesheet" content="text/css" href="style.css">
</head>
<body>
<?php
require "config.php";
if(!($_POST['actie'])){
?>Velden met een * zijn verplicht...
<form method="POST" action="aanmelden.php">
<input type="hidden" name="actie" value="1">
<input type="hidden" size="1" name="pm" value="0">Naam:<br>
<input type="text" name="naam" size="30"> *<br>
Email adres:<br>
<input type="text" name="email" size="30"> *<br>
Woonplaats:<br>
<input type="text" name="woonplaats" size="30"><br>
Geboortedatum ( dd-mm-jjjj ):<br>
<input type="text" name="geb1" size="2" maxlength="2"> - <input type="text" name="geb2" size="2" maxlength="2"> - <input type="text" name="geb3" size="4" maxlength="4"><br>
Gewenste gebruikersnaam::<br>
<input type="text" name="gebruikersnaam" size="25"> *<br>
Wachtwoord:<br>
<input class="w8" type="password" name="wachtwoord" size="12" maxlength="12">
*<br>
Wachtwoord [ bevestig ]<br>
<input class="w8" type="password" name="wachtwoord2" size="12" maxlength="12">
*<br>
<input type="submit" value="Aanmelden">
<input type="reset" value="Wis velden"><p></p>
</form>
<?php
}
else{
$query = mysql_query("SELECT * FROM members WHERE gebruikersnaam = '$gebruikersnaam'");
$result = mysql_num_rows($query);
if($result){
echo "Deze gebruikersnaam is al in gebruik<br><br><a href='javascript:history.go(-1)'>Ga terug</a>";
}
else{
if($wachtwoord!=$wachtwoord2){
echo "De wachtwoorden zijn niet gelijkt aan elkaar";
}
else{
$geboortedatum = "$geb1-$geb2-$geb3";
$tekens=array("a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z");
$activeringscode;
for($c = 0; $c < 12; $c++){
srand((double)microtime() * 100000000000000);
$pass = $tekens[rand(0, 62)];
$activeringscode=$activeringscode.$pass;
}
if($actmail == 1){
$activeringscode = 0;
}
elseif($actmail == 2){
$activeringscode = 1;
}
elseif($actmail == 0){
$activeringscode = 0;
}
/*
$gebruikersnaam = $_POST['gebruikersnaam'];
$wachtwoord = $_POST['wachtwoord'];
$naam = $_POST['naam'];
$email = $_POST['email '];
$geboortedatum = $_POST['geboortedatum '];
$woonplaats = $_POST['woonplaats '];
$pm = $_POST['pm'];
*/
mysql_query("INSERT INTO members (gebruikersnaam,wachtwoord,naam,email,geboortedatum,woonplaats,geactiveerd,pm) VALUES ('$gebruikersnaam','$wachtwoord','$naam','$email','$geboortedatum','$woonplaats','$geactiveerd','$pm'')") or die(mysql_error());
$bericht = "Via onze website heb jij (als het goed is) een aanmeldingsformulier ingevuld waarmee je een lid van onze
website wordt, als dit niet het geval is kun je dit mailtje het beste verwijderen.\n\nAls je je wel wilt aanmelden voor een
account op onze website moet je op de onderstaande url klikken om je account te activeren:\n\n
<a href=\"$script_url/activeer.php?activate=$activeringscode\">$script_url/activeer.php?activate=$activeringscode</a>\n\nMet vriendelijke groet
Webmaster $webmaster_url";
if($actmail == 1){
mail("$email","Activeer nu je account $naam !","$bericht");
echo "De aanmelding is succesvol gelukt, er word nu een mailtje verstuurd aan <b>$email</b> waarin de activerings url staat...";
}
elseif($actmail == 2){
echo "Je account is geactiveerd, je kunt nu inloggen...";
}
elseif($actmail == 0){
echo "De aanmelding is gelukt, het is nu aan de webmaster om te beslissen of hij/zij je accepteerd als member van deze website...";
}
}
}
echo "Onbekende Fout";
}
?>
</body>
</html>
error_reporting(E_ALL);
ini_set("display_errors", 1);
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=iso-8859-2" http-equiv="Content-Type">
<meta http-equiv="Content-Language" content="nl">
<link rel="stylesheet" content="text/css" href="style.css">
</head>
<body>
<?php
require "config.php";
if(!($_POST['actie'])){
?>Velden met een * zijn verplicht...
<form method="POST" action="aanmelden.php">
<input type="hidden" name="actie" value="1">
<input type="hidden" size="1" name="pm" value="0">Naam:<br>
<input type="text" name="naam" size="30"> *<br>
Email adres:<br>
<input type="text" name="email" size="30"> *<br>
Woonplaats:<br>
<input type="text" name="woonplaats" size="30"><br>
Geboortedatum ( dd-mm-jjjj ):<br>
<input type="text" name="geb1" size="2" maxlength="2"> - <input type="text" name="geb2" size="2" maxlength="2"> - <input type="text" name="geb3" size="4" maxlength="4"><br>
Gewenste gebruikersnaam::<br>
<input type="text" name="gebruikersnaam" size="25"> *<br>
Wachtwoord:<br>
<input class="w8" type="password" name="wachtwoord" size="12" maxlength="12">
*<br>
Wachtwoord [ bevestig ]<br>
<input class="w8" type="password" name="wachtwoord2" size="12" maxlength="12">
*<br>
<input type="submit" value="Aanmelden">
<input type="reset" value="Wis velden"><p></p>
</form>
<?php
}
else{
$query = mysql_query("SELECT * FROM members WHERE gebruikersnaam = '$gebruikersnaam'");
$result = mysql_num_rows($query);
if($result){
echo "Deze gebruikersnaam is al in gebruik<br><br><a href='javascript:history.go(-1)'>Ga terug</a>";
}
else{
if($wachtwoord!=$wachtwoord2){
echo "De wachtwoorden zijn niet gelijkt aan elkaar";
}
else{
$geboortedatum = "$geb1-$geb2-$geb3";
$tekens=array("a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z");
$activeringscode;
for($c = 0; $c < 12; $c++){
srand((double)microtime() * 100000000000000);
$pass = $tekens[rand(0, 62)];
$activeringscode=$activeringscode.$pass;
}
if($actmail == 1){
$activeringscode = 0;
}
elseif($actmail == 2){
$activeringscode = 1;
}
elseif($actmail == 0){
$activeringscode = 0;
}
/*
$gebruikersnaam = $_POST['gebruikersnaam'];
$wachtwoord = $_POST['wachtwoord'];
$naam = $_POST['naam'];
$email = $_POST['email '];
$geboortedatum = $_POST['geboortedatum '];
$woonplaats = $_POST['woonplaats '];
$pm = $_POST['pm'];
*/
mysql_query("INSERT INTO members (gebruikersnaam,wachtwoord,naam,email,geboortedatum,woonplaats,geactiveerd,pm) VALUES ('$gebruikersnaam','$wachtwoord','$naam','$email','$geboortedatum','$woonplaats','$geactiveerd','$pm'')") or die(mysql_error());
$bericht = "Via onze website heb jij (als het goed is) een aanmeldingsformulier ingevuld waarmee je een lid van onze
website wordt, als dit niet het geval is kun je dit mailtje het beste verwijderen.\n\nAls je je wel wilt aanmelden voor een
account op onze website moet je op de onderstaande url klikken om je account te activeren:\n\n
<a href=\"$script_url/activeer.php?activate=$activeringscode\">$script_url/activeer.php?activate=$activeringscode</a>\n\nMet vriendelijke groet
Webmaster $webmaster_url";
if($actmail == 1){
mail("$email","Activeer nu je account $naam !","$bericht");
echo "De aanmelding is succesvol gelukt, er word nu een mailtje verstuurd aan <b>$email</b> waarin de activerings url staat...";
}
elseif($actmail == 2){
echo "Je account is geactiveerd, je kunt nu inloggen...";
}
elseif($actmail == 0){
echo "De aanmelding is gelukt, het is nu aan de webmaster om te beslissen of hij/zij je accepteerd als member van deze website...";
}
}
}
echo "Onbekende Fout";
}
?>
</body>
</html>
Kan iemand mij helpen een als er iets niet duidelijk is moet je het vragen.
Alvast Bedankt.
Gewijzigd op 01/01/1970 01:00:00 door Marc Hagen
PS: Vertellen WAT er gebeurt is ook erg handig in het vervolg.
Gewijzigd op 01/01/1970 01:00:00 door - Ariën -
Daar heb je de slash de verkeerde kant op gezet. Daar moeten de variablen eigenlijk buiten de quotes. Zo dus:
``Joris,, schreef op 27.12.2009 16:31:
Op regel 85:
[..]
Daar heb je de slash de verkeerde kant op gezet. Daar moeten de variablen eigenlijk buiten de quotes. Zo dus:
[..]
[..]
Daar heb je de slash de verkeerde kant op gezet. Daar moeten de variablen eigenlijk buiten de quotes. Zo dus:
[..]
Quote:
oke Tnks
Als ik aanmelden.php open in internet krijg ik nettjes mijn form tezien.
Invullen gaat goed. Dan klik je submit en krijg ik onbekende fout.
De laaste else is dat.
oke Tnks
Als ik aanmelden.php open in internet krijg ik nettjes mijn form tezien.
Invullen gaat goed. Dan klik je submit en krijg ik onbekende fout.
De laaste else is dat.
Gewijzigd op 01/01/1970 01:00:00 door Marc Hagen
Wat is dat voor controle? Ik geloof er niets van dat al die variabelen booleans zijn, het lijkt mij eerder dat het strings zijn en in dat geval klopt hier niets van. Dat zou zomaar eens de reden kunnen zijn dat je script telkens naar die else schiet.
ps. Waar komen die variabelen überhaupt vandaan? Ik zie ze nergens eerder in je script terug komen?
Gewijzigd op 01/01/1970 01:00:00 door Joren de Wit
Je script is oud en gevoelig voor sql injections
Blanche schreef op 27.12.2009 16:37:
Regel 46:
Wat is dat voor controle? Ik geloof er niets van dat al die variabelen booleans zijn, het lijkt mij eerder dat het strings zijn en in dat geval klopt hier niets van. Dat zou zomaar eens de reden kunnen zijn dat je script telkens naar die else schiet.
ps. Waar komen die variabelen überhaupt vandaan? Ik zie ze nergens eerder in je script terug komen?
Wat is dat voor controle? Ik geloof er niets van dat al die variabelen booleans zijn, het lijkt mij eerder dat het strings zijn en in dat geval klopt hier niets van. Dat zou zomaar eens de reden kunnen zijn dat je script telkens naar die else schiet.
ps. Waar komen die variabelen überhaupt vandaan? Ik zie ze nergens eerder in je script terug komen?
Als het goed is komt van
Code (php)
1
2
3
2
3
$gebruikersnaam = $_POST['gebruikersnaam'];
$wachtwoord = $_POST['wachtwoord'];
$naam = $_POST['naam'];
$wachtwoord = $_POST['wachtwoord'];
$naam = $_POST['naam'];
Maar ik haal die idd maar weg
SanThe schreef op 27.12.2009 16:39:
Zet dit bovenin je script.
Klopt dat is zeer handig maar mijn internet host heeft zitten kutten daar mee en er komt nu alleen 500 Internal Sever Error testaan
Klaasjan Boven schreef op 27.12.2009 16:50:
Je script is oud en gevoelig voor sql injections
Hoe dan zo?
Marc schreef op 27.12.2009 16:58:
Klopt dat is zeer handig maar mijn internet host heeft zitten kutten daar mee en er komt nu alleen 500 Internal Sever Error testaan
SanThe schreef op 27.12.2009 16:39:
Zet dit bovenin je script.
Klopt dat is zeer handig maar mijn internet host heeft zitten kutten daar mee en er komt nu alleen 500 Internal Sever Error testaan
Dat kan niet door deze regels komen.
SanThe schreef op 27.12.2009 17:04:
Dat kan niet door deze regels komen.
Marc schreef op 27.12.2009 16:58:
Klopt dat is zeer handig maar mijn internet host heeft zitten kutten daar mee en er komt nu alleen 500 Internal Sever Error testaan
SanThe schreef op 27.12.2009 16:39:
Zet dit bovenin je script.
Klopt dat is zeer handig maar mijn internet host heeft zitten kutten daar mee en er komt nu alleen 500 Internal Sever Error testaan
Dat kan niet door deze regels komen.
Sorry je hebt gelijk deze error krijg ik er ook nog even door:
Notice: Undefined index: submit in /sites/[website]/[subsite]/MemberSysteem/aanmelden.php on line 18
Die bestaat dus niet.
PHP beginnershandleiding
Zoals gezegd, je code is oud en zit vol lekken. Lees bovenstaande handleiding en probeer het daarna op een nette manier te scripten. Daar leer je meer van dan elk probleem dat je tegenkomt hier te posten.
Succes!
$wachtwoord = $_POST['wachtwoord'];
$naam = $_POST['naam'];
$email = $_POST['email '];
$geboortedatum = $_POST['geboortedatum '];
$woonplaats = $_POST['woonplaats '];
$pm = $_POST['pm'];
Is onnodig, tevens zijn de vars nog steeds onbeschermd
Klaasjan Boven schreef op 27.12.2009 17:24:
vars onbeschermd zou ik graag wat meer over willen weten maar vond het niet in de eergenomede tutorial$gebruikersnaam = $_POST['gebruikersnaam'];
$wachtwoord = $_POST['wachtwoord'];
$naam = $_POST['naam'];
$email = $_POST['email '];
$geboortedatum = $_POST['geboortedatum '];
$woonplaats = $_POST['woonplaats '];
$pm = $_POST['pm'];
Is onnodig, tevens zijn de vars nog steeds onbeschermd
$wachtwoord = $_POST['wachtwoord'];
$naam = $_POST['naam'];
$email = $_POST['email '];
$geboortedatum = $_POST['geboortedatum '];
$woonplaats = $_POST['woonplaats '];
$pm = $_POST['pm'];
Is onnodig, tevens zijn de vars nog steeds onbeschermd
John schreef op 27.12.2009 18:01:
Klaasjan Boven schreef op 27.12.2009 17:24:
vars onbeschermd zou ik graag wat meer over willen weten maar vond het niet in de eergenomede tutorial$gebruikersnaam = $_POST['gebruikersnaam'];
$wachtwoord = $_POST['wachtwoord'];
$naam = $_POST['naam'];
$email = $_POST['email '];
$geboortedatum = $_POST['geboortedatum '];
$woonplaats = $_POST['woonplaats '];
$pm = $_POST['pm'];
Is onnodig, tevens zijn de vars nog steeds onbeschermd
$wachtwoord = $_POST['wachtwoord'];
$naam = $_POST['naam'];
$email = $_POST['email '];
$geboortedatum = $_POST['geboortedatum '];
$woonplaats = $_POST['woonplaats '];
$pm = $_POST['pm'];
Is onnodig, tevens zijn de vars nog steeds onbeschermd
Ja ik ook, vars onbeschermd? (ben maar een beginner )
Gewijzigd op 01/01/1970 01:00:00 door Marc Hagen
SQL injection dus. Daar tegen zijn ze niet beschermd.
mysql_real_escape_string zoek daar eens op.