Formulier voert niks uit
Ik kom er even niet meer uit. Volgens mij heb ik toch echt alles goed gedaan! Wilt iemand het even controleren en de fout zoeken, want ik kan het echt niet vinden. Alvast bedankt!
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
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
<?
$sQuery = mysql_query("SELECT * FROM users WHERE ip = '".$_SERVER['REMOTE_ADDR']."'");
$sResult = mysql_num_rows($sQuery);
if(isset($_SESSION['id'])) {
echo ubb('[box=Registreren op Habbowereld.nl]'.$page['text'].'[subtitle]JE BENT AL REEDS GEREGISTREERD[/subtitle]
Je bent op dit moment ingelogd op Habbowereld.nl. Dit betekend dat je geen account aan kunt maken. Is je iemand ingelogd maar jij hebt nog geen acccount? Log dan uit en registreer je opnieuw! Je kunt maximaal 2 gebruikers per netwerk (IP) aanmaken.
[center][img=center]http://www.habbowereld.nl/assets/img/site/content_image1.png[/img][/center]
[/box]');
}elseif($sResult >= 8){
echo ubb('[box=Registreren op Habbowereld.nl][img=right]http://www.habbowereld.nl/assets/img/site/page_image_IPo.gif[/img]Helaas, Je hebt het maximaal aantal accounts overschreden. Dit betekend dat je 2 accounts of meer hebt aangemeld op Habbowereld.nl. Dit is tegen onze regels.
Je kunt je IP vinden op [url=http://www.mijnip.nl/]mijnip.nl[/url]. Om te kijken welke accounts er allemaal op jou IP staan kun je <a href="#">dit formulier</a> invullen. Of je kunt een mail laten sturen naar je email met een accountoverzicht. Voor die functie moet je <a href="#">hier</a> klikken.[/box]');
}elseif(isset($_POST['register']) && !empty($_POST['username']) && !empty($_POST['password']) && !empty($_POST['password2']) && !empty($_POST['email']) && !empty($_POST['sex']) && !empty($_POST['favo_room']) && !empty($_POST['favo_habbo']) && !empty($_POST['favo_meubi']) && isset($_POST['textprofile']) && isset($_POST['sign']) && isset($_POST['avatar']) && $_POST['password'] == $_POST['password2'] && !strpos($_POST['username']," ") && !strpos($_POST['username'],"'") && !strpos($_POST['username'],"/") && !strpos($_POST['username'],"´") && strlen($_POST['username']) >= 4 && $_POST['username'] != "systeem" && $_POST['username'] != "admin" && $_POST['username'] != "<noscript>" && $_POST['username'] != "MOD-" && $_POST['username'] != "<noscript />" && $_POST['username'] != "<noscript>" && $_POST['username'] != "<NOSCRIPT>" && $_POST['username'] != "<noscript >" && $_POST['username'] != "<plaintext>" && $_POST['username'] != "<PLAINTEXT>" && $_POST['username'] != "<plaintext >" && $_POST['username'] != "<PLAINTEXT >" && strpos($_POST['username'],"<") == false) {
$sql = mysql_query("INSERT INTO users (username,password,email,level,register,ip,points,coins,sex) VALUES ('".$_POST['username']."','".md5($_POST['password'])."','".$_POST['email']."','1',NOW(),'".$_SERVER['REMOTE_ADDR']."','0','50','".$_POST['sex']."')");
$sql2 = mysql_query("INSERT INTO profile (username,favo_room,favo_habbo,favo_meubi,textprofile, sign, avatar) VALUES ('".$_POST['username']."','".$_POST['favo_room']."','".$_POST['favo_habbo']."','".$_POST['favo_meubi']."','".$_POST['textprofile']."','".$_POST['sign']."','".$_POST['avatar']."')");
$sql_member = mysql_query("SELECT * FROM users WHERE username='".$_POST['username']."' AND email='".$_POST['email']."'");
$row_member = mysql_fetch_assoc($sql_member);
if(eregi("Duplicate",mysql_error())) {
echo ubb("[box=Habbowereld Ledensysteem][center]De gebruikersnaam of email die je hebt ingevuld is al van een van onze andere leden.
Kies dus een andere. <a href='javascript:history.go(-1)'>Ga terug</a>.[/box]");
}elseif(mysql_error() != "") {
return mysql_error();
}else{
/// de gegevens worden gemaild ///
$headers = "Content-Type: text/html; charset=iso-8859-1\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "From: Habbowereld.nl Accounts <[email protected]>";
mail($email,"Habbowereld Gebruikersaccount","Hallo ".$_POST['username']."!<br>Je hebt zojuist een gebruikersaccount geregistreerd op Habbowereld.nl<br>Gefeliciteerd, Dit is succesvol gelukt!<br>Hieronder vindt je je inloggegevens:<br><br>
Gebruikersnaam : <strong>".$_POST['username']."</strong><br>
Wachtwoord : <strong>".$_POST['password']."</strong><br>
<br>
Log nu meteen in via <a href='http://www.habbowereld.nl/'>Habbowereld.nl</a><br><br>Groeten,<br>Habbowereld.nl",$headers); /// Dit is de hele mail code
return "<h3>".$_POST['username']."</h3>
Je account is succesvol aangemaakt.<br>
Je hebt een email gekregen met je gegevens.<br>
Je kan <a href='?p=login'>hier</a> meteen al inloggen.";
}
}else{
echo ubb('[box=Registreren op Habbowereld.nl]'.$page['text'].'<form name="registreren" action="http://www.habbowereld.nl/leden/registreren/" onSubmit="return ValidateForm()" method="post">[subtitle]STAP 1 - ACCOUNT GEGEVENS[/subtitle]
<div align="center"><table width="400" cellpadding="0" cellspacing="0"><tr><td width="150" align="left" valign="top">Habbonaam</td><td width="250" align="left"><input name="username" type="text" maxlength="255"'); if(isset($_POST['register'])) { echo "value='".$_POST['username']."'"; } echo ubb(' />');
if(isset($_POST['registreren']) && empty($_POST['gebruikersnaam'])) {
echo "<br><b><font color='red'>Je hebt je gebruikersnaam leeggelaten.</font></b>";
}
if(isset($_POST['register']) && strpos($_POST['username']," ")) {
echo "<br><b><font color='red'>Spaties zijn niet toegestaan.</font></b>";
}
if(isset($_POST['register']) && strpos($_POST['username'],"/")) {
echo "<br><b><font color='red'>Er bevinden zich rare tekens in de naam.</font></b>";
}
if(isset($_POST['register']) && strpos($_POST['username'],"´")) {
echo "<br><b><font color='red'>Er bevinden zich rare tekens in de naam.</font></b>";
}
if(isset($_POST['register']) && strpos($_POST['username'],"'")) {
echo "<br><b><font color='red'>Er bevinden zich rare tekens in de naam.</font></b>";
}
if(isset($_POST['register']) && strpos($_POST['username'],"<")) {
echo "<br><b><font color='red'>Er bevinden zich rare tekens in de naam.</font></b>";
}
if(isset($_POST['register']) && strpos($_POST['username'],">")) {
echo "<br><b><font color='red'>Er bevinden zich rare tekens in de naam.</font></b>";
}
if(isset($_POST['register']) && strpos($_POST['username'],"\"")) {
echo "<br><b><font color='red'>Er bevinden zich rare tekens in de naam.</font></b>";
}
if(isset($_POST['register']) && strlen($_POST['username']) < 4) {
echo "<br><b><font color='red'>Je gebruikersnaam moet uit 4 of meer tekens bestaan.</font></b>";
}
$sql_userCheck = mysql_query("SELECT username FROM users WHERE username = '".$_POST['username']."'");
$userCheck = mysql_num_rows($sql_userCheck);
if($userCheck > 0) {
echo "<br><b><font color='red'>Deze gebruikersnaam bestaat al.</font></b>";
}
echo ubb('</td></tr><tr><td align="left" valign="top">Wachtwoord</td><td width="250" align="left"><input name="password" type="password"'); if(isset($_POST['register'])) { echo "value='".$_POST['password']."'"; } echo ubb('maxlength="255" />');
if(isset($_POST['register']) && empty($_POST['password'])) {
echo "<br><b><font color='red'>Je hebt je wachtwoord leeggelaten.</font></b>";
}
if(isset($_POST['register']) && $_POST['password'] != $_POST['password2']) {
echo "<br><b><font color='red'>De wachtwoorden zijn niet hetzelfde.</font></b>";
}
echo ubb('</td></tr><tr><td align="left" valign="top">Wachtwoord</td><td align="left"><input name="password2" type="password"'); if(isset($_POST['register'])) { echo "value='".$_POST['password2']."'"; } echo ubb(' maxlength="255" />');
if(isset($_POST['register']) && empty($_POST['password2'])) {
echo "<br><b><font color='red'>Je hebt geen wachtwoord herhalen ingevult.</font></b>";
}
echo ubb('</td></tr><tr><td align="left" valign="top">Emailadres</td><td align="left"><input name="email" type="text"'); if(isset($_POST['register'])) { echo "value='".$_POST['email']."'"; } echo ubb(' maxlength="255" />');
if(isset($_POST['register']) && empty($_POST['email'])) {
echo "<br><b><font color='red'>Je hebt je email leeggelaten.</font></b>";
}
if(isset($_POST['register']) && !strpos($_POST['email'],"@")) {
echo "<br><b><font color='red'>Dit is een ongeldig emailadres.</font></b>";
}
echo ubb('</td></tr></table></div>
[subtitle]STAP 2 - FAVORIETEN[/subtitle]
<div align="center"><table width="400" cellpadding="0" cellspacing="0"><tr><td width="150" align="left">Geslacht</td><td width="250" align="left"><select name="sex"><option value="secret" selected="selected">Geheim</option><option value="men">Jongen</option><option value="women">Meisje</option></select></td></tr><tr><td align="left">Favoriete Kamer</td><td width="250" align="left"><input name="favo_room" type="text" maxlength="255" /></td></tr><tr><td align="left">Favoriete Habbo</td><td align="left"><input name="favo_habbo" type="text" maxlength="255" /></td></tr><tr><td align="left">Favoriete meubel</td><td align="left"><input name="favo_meubi" type="text" maxlength="255" /></td></tr></table></div>
[subtitle]STAP 3 - PROFIEL INSTELLINGEN*[/subtitle]
<div align="center"><table width="400" cellpadding="0" cellspacing="0"><tr><td width="150" align="left">Groot profiel</td><td width="250" align="left"><textarea name="profile" rows="5"></textarea></td></tr><tr><td align="left">Handtekening</td><td width="250" align="left"><textarea name="sign" rows="5"></textarea></td></tr><tr><td align="left">Avatar URL</td><td align="left"><input name="avatar" type="text" maxlength="255" /></td></tr><tr><td> </td></tr><tr><td></td><td align="left"><input name="register" type="submit" value="Registreren" /></td></tr></table></div></form>[/box]');
}
?>
$sQuery = mysql_query("SELECT * FROM users WHERE ip = '".$_SERVER['REMOTE_ADDR']."'");
$sResult = mysql_num_rows($sQuery);
if(isset($_SESSION['id'])) {
echo ubb('[box=Registreren op Habbowereld.nl]'.$page['text'].'[subtitle]JE BENT AL REEDS GEREGISTREERD[/subtitle]
Je bent op dit moment ingelogd op Habbowereld.nl. Dit betekend dat je geen account aan kunt maken. Is je iemand ingelogd maar jij hebt nog geen acccount? Log dan uit en registreer je opnieuw! Je kunt maximaal 2 gebruikers per netwerk (IP) aanmaken.
[center][img=center]http://www.habbowereld.nl/assets/img/site/content_image1.png[/img][/center]
[/box]');
}elseif($sResult >= 8){
echo ubb('[box=Registreren op Habbowereld.nl][img=right]http://www.habbowereld.nl/assets/img/site/page_image_IPo.gif[/img]Helaas, Je hebt het maximaal aantal accounts overschreden. Dit betekend dat je 2 accounts of meer hebt aangemeld op Habbowereld.nl. Dit is tegen onze regels.
Je kunt je IP vinden op [url=http://www.mijnip.nl/]mijnip.nl[/url]. Om te kijken welke accounts er allemaal op jou IP staan kun je <a href="#">dit formulier</a> invullen. Of je kunt een mail laten sturen naar je email met een accountoverzicht. Voor die functie moet je <a href="#">hier</a> klikken.[/box]');
}elseif(isset($_POST['register']) && !empty($_POST['username']) && !empty($_POST['password']) && !empty($_POST['password2']) && !empty($_POST['email']) && !empty($_POST['sex']) && !empty($_POST['favo_room']) && !empty($_POST['favo_habbo']) && !empty($_POST['favo_meubi']) && isset($_POST['textprofile']) && isset($_POST['sign']) && isset($_POST['avatar']) && $_POST['password'] == $_POST['password2'] && !strpos($_POST['username']," ") && !strpos($_POST['username'],"'") && !strpos($_POST['username'],"/") && !strpos($_POST['username'],"´") && strlen($_POST['username']) >= 4 && $_POST['username'] != "systeem" && $_POST['username'] != "admin" && $_POST['username'] != "<noscript>" && $_POST['username'] != "MOD-" && $_POST['username'] != "<noscript />" && $_POST['username'] != "<noscript>" && $_POST['username'] != "<NOSCRIPT>" && $_POST['username'] != "<noscript >" && $_POST['username'] != "<plaintext>" && $_POST['username'] != "<PLAINTEXT>" && $_POST['username'] != "<plaintext >" && $_POST['username'] != "<PLAINTEXT >" && strpos($_POST['username'],"<") == false) {
$sql = mysql_query("INSERT INTO users (username,password,email,level,register,ip,points,coins,sex) VALUES ('".$_POST['username']."','".md5($_POST['password'])."','".$_POST['email']."','1',NOW(),'".$_SERVER['REMOTE_ADDR']."','0','50','".$_POST['sex']."')");
$sql2 = mysql_query("INSERT INTO profile (username,favo_room,favo_habbo,favo_meubi,textprofile, sign, avatar) VALUES ('".$_POST['username']."','".$_POST['favo_room']."','".$_POST['favo_habbo']."','".$_POST['favo_meubi']."','".$_POST['textprofile']."','".$_POST['sign']."','".$_POST['avatar']."')");
$sql_member = mysql_query("SELECT * FROM users WHERE username='".$_POST['username']."' AND email='".$_POST['email']."'");
$row_member = mysql_fetch_assoc($sql_member);
if(eregi("Duplicate",mysql_error())) {
echo ubb("[box=Habbowereld Ledensysteem][center]De gebruikersnaam of email die je hebt ingevuld is al van een van onze andere leden.
Kies dus een andere. <a href='javascript:history.go(-1)'>Ga terug</a>.[/box]");
}elseif(mysql_error() != "") {
return mysql_error();
}else{
/// de gegevens worden gemaild ///
$headers = "Content-Type: text/html; charset=iso-8859-1\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "From: Habbowereld.nl Accounts <[email protected]>";
mail($email,"Habbowereld Gebruikersaccount","Hallo ".$_POST['username']."!<br>Je hebt zojuist een gebruikersaccount geregistreerd op Habbowereld.nl<br>Gefeliciteerd, Dit is succesvol gelukt!<br>Hieronder vindt je je inloggegevens:<br><br>
Gebruikersnaam : <strong>".$_POST['username']."</strong><br>
Wachtwoord : <strong>".$_POST['password']."</strong><br>
<br>
Log nu meteen in via <a href='http://www.habbowereld.nl/'>Habbowereld.nl</a><br><br>Groeten,<br>Habbowereld.nl",$headers); /// Dit is de hele mail code
return "<h3>".$_POST['username']."</h3>
Je account is succesvol aangemaakt.<br>
Je hebt een email gekregen met je gegevens.<br>
Je kan <a href='?p=login'>hier</a> meteen al inloggen.";
}
}else{
echo ubb('[box=Registreren op Habbowereld.nl]'.$page['text'].'<form name="registreren" action="http://www.habbowereld.nl/leden/registreren/" onSubmit="return ValidateForm()" method="post">[subtitle]STAP 1 - ACCOUNT GEGEVENS[/subtitle]
<div align="center"><table width="400" cellpadding="0" cellspacing="0"><tr><td width="150" align="left" valign="top">Habbonaam</td><td width="250" align="left"><input name="username" type="text" maxlength="255"'); if(isset($_POST['register'])) { echo "value='".$_POST['username']."'"; } echo ubb(' />');
if(isset($_POST['registreren']) && empty($_POST['gebruikersnaam'])) {
echo "<br><b><font color='red'>Je hebt je gebruikersnaam leeggelaten.</font></b>";
}
if(isset($_POST['register']) && strpos($_POST['username']," ")) {
echo "<br><b><font color='red'>Spaties zijn niet toegestaan.</font></b>";
}
if(isset($_POST['register']) && strpos($_POST['username'],"/")) {
echo "<br><b><font color='red'>Er bevinden zich rare tekens in de naam.</font></b>";
}
if(isset($_POST['register']) && strpos($_POST['username'],"´")) {
echo "<br><b><font color='red'>Er bevinden zich rare tekens in de naam.</font></b>";
}
if(isset($_POST['register']) && strpos($_POST['username'],"'")) {
echo "<br><b><font color='red'>Er bevinden zich rare tekens in de naam.</font></b>";
}
if(isset($_POST['register']) && strpos($_POST['username'],"<")) {
echo "<br><b><font color='red'>Er bevinden zich rare tekens in de naam.</font></b>";
}
if(isset($_POST['register']) && strpos($_POST['username'],">")) {
echo "<br><b><font color='red'>Er bevinden zich rare tekens in de naam.</font></b>";
}
if(isset($_POST['register']) && strpos($_POST['username'],"\"")) {
echo "<br><b><font color='red'>Er bevinden zich rare tekens in de naam.</font></b>";
}
if(isset($_POST['register']) && strlen($_POST['username']) < 4) {
echo "<br><b><font color='red'>Je gebruikersnaam moet uit 4 of meer tekens bestaan.</font></b>";
}
$sql_userCheck = mysql_query("SELECT username FROM users WHERE username = '".$_POST['username']."'");
$userCheck = mysql_num_rows($sql_userCheck);
if($userCheck > 0) {
echo "<br><b><font color='red'>Deze gebruikersnaam bestaat al.</font></b>";
}
echo ubb('</td></tr><tr><td align="left" valign="top">Wachtwoord</td><td width="250" align="left"><input name="password" type="password"'); if(isset($_POST['register'])) { echo "value='".$_POST['password']."'"; } echo ubb('maxlength="255" />');
if(isset($_POST['register']) && empty($_POST['password'])) {
echo "<br><b><font color='red'>Je hebt je wachtwoord leeggelaten.</font></b>";
}
if(isset($_POST['register']) && $_POST['password'] != $_POST['password2']) {
echo "<br><b><font color='red'>De wachtwoorden zijn niet hetzelfde.</font></b>";
}
echo ubb('</td></tr><tr><td align="left" valign="top">Wachtwoord</td><td align="left"><input name="password2" type="password"'); if(isset($_POST['register'])) { echo "value='".$_POST['password2']."'"; } echo ubb(' maxlength="255" />');
if(isset($_POST['register']) && empty($_POST['password2'])) {
echo "<br><b><font color='red'>Je hebt geen wachtwoord herhalen ingevult.</font></b>";
}
echo ubb('</td></tr><tr><td align="left" valign="top">Emailadres</td><td align="left"><input name="email" type="text"'); if(isset($_POST['register'])) { echo "value='".$_POST['email']."'"; } echo ubb(' maxlength="255" />');
if(isset($_POST['register']) && empty($_POST['email'])) {
echo "<br><b><font color='red'>Je hebt je email leeggelaten.</font></b>";
}
if(isset($_POST['register']) && !strpos($_POST['email'],"@")) {
echo "<br><b><font color='red'>Dit is een ongeldig emailadres.</font></b>";
}
echo ubb('</td></tr></table></div>
[subtitle]STAP 2 - FAVORIETEN[/subtitle]
<div align="center"><table width="400" cellpadding="0" cellspacing="0"><tr><td width="150" align="left">Geslacht</td><td width="250" align="left"><select name="sex"><option value="secret" selected="selected">Geheim</option><option value="men">Jongen</option><option value="women">Meisje</option></select></td></tr><tr><td align="left">Favoriete Kamer</td><td width="250" align="left"><input name="favo_room" type="text" maxlength="255" /></td></tr><tr><td align="left">Favoriete Habbo</td><td align="left"><input name="favo_habbo" type="text" maxlength="255" /></td></tr><tr><td align="left">Favoriete meubel</td><td align="left"><input name="favo_meubi" type="text" maxlength="255" /></td></tr></table></div>
[subtitle]STAP 3 - PROFIEL INSTELLINGEN*[/subtitle]
<div align="center"><table width="400" cellpadding="0" cellspacing="0"><tr><td width="150" align="left">Groot profiel</td><td width="250" align="left"><textarea name="profile" rows="5"></textarea></td></tr><tr><td align="left">Handtekening</td><td width="250" align="left"><textarea name="sign" rows="5"></textarea></td></tr><tr><td align="left">Avatar URL</td><td align="left"><input name="avatar" type="text" maxlength="255" /></td></tr><tr><td> </td></tr><tr><td></td><td align="left"><input name="register" type="submit" value="Registreren" /></td></tr></table></div></form>[/box]');
}
?>
Code (php)
Daar gebruik je registreren, en bij de rest register.. dus loop al je names nog maar 's na of er niet een verkeerd is.
edit: en denk a.u.b om de veiligheid. Alles wat je in het formulier kunt invullen is SQL injecteerbaar...
Gewijzigd op 01/01/1970 01:00:00 door Timen kut
Timen schreef op 17.02.2009 11:15:
Daar gebruik je registreren, en bij de rest register.. dus loop al je names nog maar 's na of er niet een verkeerd is.
edit: en denk a.u.b om de veiligheid. Alles wat je in het formulier kunt invullen is SQL injecteerbaar...
Code (php)
Daar gebruik je registreren, en bij de rest register.. dus loop al je names nog maar 's na of er niet een verkeerd is.
edit: en denk a.u.b om de veiligheid. Alles wat je in het formulier kunt invullen is SQL injecteerbaar...
Hoe zou ik hem dan beter kunnen beveiligen?
- $_SESSIONS's tellen maar 1 refresh mee, dus ik raad je aan om cookies te gebruiken.
setcookie("cookienaam", $_SESSION['id'], time()+3600, "/");
om aan te maken (moet bovenop je pagina).
$_COOKIE['id'] om op te vragen.
- Je beveiliging is erg slecht zoals anderen al hebben aangegeven. Voor mijn cms gebruik ik een universele beveiliging op elke user input:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
function Correct($var)
{
$var = mysql_real_escape_string($var);
$var = htmlentities($var);
$var = preg_replace(sql_regcase("/(from|select|insert|delete|where|drop table|show tables|#|\*|'|--|\\\\)/"),"",$var);
$var = trim($var);
$var = strip_tags($var);
$var = addslashes($var);
$var = str_replace("'", "''", $var);
$var = nl2br($var);
return $var;
{
$var = mysql_real_escape_string($var);
$var = htmlentities($var);
$var = preg_replace(sql_regcase("/(from|select|insert|delete|where|drop table|show tables|#|\*|'|--|\\\\)/"),"",$var);
$var = trim($var);
$var = strip_tags($var);
$var = addslashes($var);
$var = str_replace("'", "''", $var);
$var = nl2br($var);
return $var;
- op rgl 46 staat een dubbele controle
doe precies hetzelfde.