hij schrijft het niet naar de datebase.
Nou ben ik bezig met het aanmeld gedeelte maar ik zit vast.
Als ik alle gegevens in vul en op aanmelden druk dan krijg ik netjes mijn wachtwoord via de mail. Maar als ik dan in de datebase ga kijken heeft hij alleen de tabel "tijdelijk" ingevuld en schrijft hij dus niks naar de tabel "leden". Ziet iemand waar het fout gaat?
Alvast bedankt.
MVG joey
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
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
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
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
<?php
include("config.php");
$sitenaam = "Cyber-war";
$sitelink = "www.cyber-war.nl/forum";
$sitemail = "[email protected]";
$gebruikersnaam = $_POST['gebruikersnaam'];
$leeftijd = $_POST['leeftijd'];
$stad4 = $_POST['stad'];
$email = $_POST['email'];
$geslacht = $_POST['geslacht'];
$ip = $_SERVER['REMOTE_ADDR'];
${"select$geslacht"} = "selected";
if(isset($_POST['submit'])) {
$bericht = Array(
"Je gebruikersnaam mag alleen A-Z, a-z, 0-9, _ en - hebben",
"Vul een leeftijd in",
"Vul een geldig e-mail adres in",
"Er bestaat al iemand met die login",
"Er is al iemand met die e-mail",
"Er is al iemand met die ip");
$check = -1;
if(preg_match('/^[a-zA-Z0-9_\-]+$/',$gebruikersnaam) == 0)
$check = 0;
if(preg_match('/^[a-zA-Z0-9_\-]+$/',$leeftijd) == 0)
$check = 1;
if(preg_match('/^.+@.+\..+$/',$email) == 0)
$check = 2;
else {
$dbres = mysql_query("SELECT `id` FROM `leden` WHERE `gebruikersnaam`='$gebruikersnaam'");
if(mysql_num_rows($dbres) > 0)
$check = 4;
$dbres = mysql_query("SELECT `id` FROM `leden` WHERE `email`='$email'");
if(mysql_num_rows($dbres) > 0)
$check = 5;
$dbres = mysql_query("SELECT `id` FROM `leden` WHERE `gebruikersnaam`='$ip'");
if(mysql_num_rows($dbres) > 0)
$check = 6;
if($check == -1) {
$rand1 = rand(11,62);
$rand2 = rand(62,999);
$rand3 = rand(11,62);
$rand4 = rand(11,62);
$rand5 = rand(62,999);
$pass = "{$rand1}{$rand2}{$rand3}{$rand4}{$rand5}{$rand6}";
$pass = preg_replace('/11/',"a",$pass);
$pass = preg_replace('/12/',"b",$pass);
$pass = preg_replace('/13/',"c",$pass);
$pass = preg_replace('/14/',"d",$pass);
$pass = preg_replace('/15/',"e",$pass);
$pass = preg_replace('/16/',"f",$pass);
$pass = preg_replace('/17/',"g",$pass);
$pass = preg_replace('/18/',"h",$pass);
$pass = preg_replace('/19/',"i",$pass);
$pass = preg_replace('/20/',"j",$pass);
$pass = preg_replace('/21/',"k",$pass);
$pass = preg_replace('/22/',"l",$pass);
$pass = preg_replace('/23/',"m",$pass);
$pass = preg_replace('/24/',"n",$pass);
$pass = preg_replace('/25/',"o",$pass);
$pass = preg_replace('/26/',"p",$pass);
$pass = preg_replace('/27/',"q",$pass);
$pass = preg_replace('/28/',"r",$pass);
$pass = preg_replace('/29/',"s",$pass);
$pass = preg_replace('/30/',"t",$pass);
$pass = preg_replace('/31/',"u",$pass);
$pass = preg_replace('/32/',"v",$pass);
$pass = preg_replace('/33/',"w",$pass);
$pass = preg_replace('/34/',"x",$pass);
$pass = preg_replace('/35/',"y",$pass);
$pass = preg_replace('/36/',"z",$pass);
$pass = preg_replace('/37/',"A",$pass);
$pass = preg_replace('/38/',"B",$pass);
$pass = preg_replace('/39/',"C",$pass);
$pass = preg_replace('/40/',"D",$pass);
$pass = preg_replace('/41/',"E",$pass);
$pass = preg_replace('/42/',"F",$pass);
$pass = preg_replace('/43/',"Q",$pass);
$pass = preg_replace('/44/',"H",$pass);
$pass = preg_replace('/45/',"I",$pass);
$pass = preg_replace('/46/',"J",$pass);
$pass = preg_replace('/47/',"K",$pass);
$pass = preg_replace('/48/',"L",$pass);
$pass = preg_replace('/49/',"M",$pass);
$pass = preg_replace('/50/',"N",$pass);
$pass = preg_replace('/51/',"O",$pass);
$pass = preg_replace('/52/',"P",$pass);
$pass = preg_replace('/53/',"Q",$pass);
$pass = preg_replace('/54/',"R",$pass);
$pass = preg_replace('/55/',"S",$pass);
$pass = preg_replace('/56/',"T",$pass);
$pass = preg_replace('/57/',"U",$pass);
$pass = preg_replace('/58/',"V",$pass);
$pass = preg_replace('/59/',"W",$pass);
$pass = preg_replace('/60/',"X",$pass);
$pass = preg_replace('/61/',"Y",$pass);
$pass = preg_replace('/62/',"Z",$pass);
$stad1 = Array("","Drenthe","Flevoland","Gelderland","Groningen","Limburg","Noord-Brabant","Noord-Holland","Overijssel","Utrech","Zeeland","Zuid-Holland","");
$stad3 = $stad1[$stad];
$code = rand(100000,999999);
mysql_query("INSERT INTO `leden`(signup,gebruikersnaam,leeftijd,wachtwoord,ip,email,stad,geslacht) values(NOW(),'$gebruikersnaam','$leeftijd',MD5('$pass'),'$ip','$email','$stad4',$geslacht)");
mysql_query("INSERT INTO `tijdelijk`(gebruikersnaam,ip,code,ruimten,tijd) values('$gebruikersnaam','$ip',$code,'aangemeld',NOW())");
$id = mysql_insert_id();
mail($email,"$sitenaam aanmeldings-bevestiging","Beste $gebruikersnaam,
Je hebt je geregistreerd op $sitenaam, en daarom deze e-mail.
Je kunt inloggen met het volgende wachtwoord: $pass
Verander zo spoedig mogelijk je wachtwoord.
Veel plezier met het spelen van $sitenaam.nl!
Met vriendelijke groeten,
Beheerders $sitelink
http://www.$sitelink
","From: $sitenaam <$sitemail>\n");
}
}
}
print <<<ENDHTML
<html>
<head>
<title>{$sitenaam} | Registreren</title>
<link rel="stylesheet" type="text/css" href="index_cw.css" />
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<script language="JavaScript" type="text/javascript">
if(self.name == 'main')
{ top.location.replace ('index.php'); }
</script>
</head>
<body bgcolor="#000000">
<div align="center">
<br /><br />
<table width="50%">
<tr>
<td class="header" valign="middle" align="left"><center>{$sitenaam} Registreren</center></td>
</tr>
</table>
ENDHTML;
if($check != -1) {
if(isset($check) && $check != -1)
print "{$bericht[$check]}\n";
$rec = $_GET['rec'];
print <<<ENDHTML
<br /><br />
<table align="center" width="50%" cellpadding="30">
<tr>
<td class="login" align="left">
<table align="center" width="100%">
<tr>
<td valign="top">
<form method="post"> <dl>
<dt><b>Gebruikersnaam:</b></dt>
<dd><input type="text" name="gebruikersnaam" maxlength=20 style="width: 150;" value="$gebruikersnaam"></dd>
<dt><b>Email-adres:</b></dt>
<dd><input type="text" name="email" maxlength=64 style="width: 150;" value="$email"></dd>
<dt><b>Geslacht:</b></dt>
<dd><select name="geslacht">
<option value="1">Man</option>
<option value="2">Vrouw</option>
</select></dd>
<dt><b>leeftijd:</b></dt>
<dd><input type="text" name="leeftijd" maxlength=16 style="width: 150;" value="$leeftijd"></dd>
<dt><b>Provincie:</b></dt>
<dd><select name="stad" style="width: 150;">
<option value="1">Drenthe</option>
<option value="2">Flevoland</option>
<option value="3">Friesland</option>
<option value="4">Gelderland</option>
<option value="5">Groningen</option>
<option value="6">Limburg</option>
<option value="7">Noord-Brabant</option>
<option value="8">Noord-Holland</option>
<option value="9">Overijssel</option>
<option value="10">Utrecht</option>
<option value="11">Zeeland</option>
<option value="12">Zuid-Holland</option>
</select></dd>
<dt></dt>
<dt><input type="submit" name="submit" style="width: 100;" value="Aanmelden"></dt>
</dl>
</form>
</td>
<td valign="top">
<ul>
<li>Je gebruikersnaam moet minimaal 3 tekens kort zijn en maximaal 20 tekens lang en mag alleen
tekens volgens de a-z, A-Z en/of 0-9 reeks bevatten.</li>
<li>Je moet een geldig email-adres invullen, want daar wordt je wachtwoord heen gestuurd.</li>
<li>Je wachtwoord wordt per e-mail verzonden.</li>
</ul>
</td>
</tr>
</table>
</td>
</tr>
</table>
<br />
<br />
<table width="50%" cellpadding="5">
<tr>
<td class="footer">
<a href="aanmelden.php">Registreren</a> |
</td>
</tr>
</table>
</div>
</body>
</html>
ENDHTML;
}
else
print <<<ENDHTML
<table align="center" width="50%" cellpadding="30">
<tr>
<td class="login" align="left">
<table align="center" width="100%">
<tr>
Gefeliciteerd {$gebruikersnaam}. <br><br>
Je bent nu aangemeld op {$sitenaam}, er is een <b>E-mailtje</b> naar het ingevulde <b>E-mail adres</b> gestuurd met uw van {$sitenaam} vermeld.<br><br>
Als er nog vragen zijn kunt u altijd een mailtje sturen naar <b>{$sitemail}</b><br><br>
</tr>
</table>
</td>
</tr>
</table>
<br />
<br />
<table width="50%" cellpadding="5">
<tr>
<td class="footer">
<a href="aanmelden.php">Registreren</a> |
</td>
</tr>
</table>
</div>
</body>
</html>
ENDHTML;
?>
include("config.php");
$sitenaam = "Cyber-war";
$sitelink = "www.cyber-war.nl/forum";
$sitemail = "[email protected]";
$gebruikersnaam = $_POST['gebruikersnaam'];
$leeftijd = $_POST['leeftijd'];
$stad4 = $_POST['stad'];
$email = $_POST['email'];
$geslacht = $_POST['geslacht'];
$ip = $_SERVER['REMOTE_ADDR'];
${"select$geslacht"} = "selected";
if(isset($_POST['submit'])) {
$bericht = Array(
"Je gebruikersnaam mag alleen A-Z, a-z, 0-9, _ en - hebben",
"Vul een leeftijd in",
"Vul een geldig e-mail adres in",
"Er bestaat al iemand met die login",
"Er is al iemand met die e-mail",
"Er is al iemand met die ip");
$check = -1;
if(preg_match('/^[a-zA-Z0-9_\-]+$/',$gebruikersnaam) == 0)
$check = 0;
if(preg_match('/^[a-zA-Z0-9_\-]+$/',$leeftijd) == 0)
$check = 1;
if(preg_match('/^.+@.+\..+$/',$email) == 0)
$check = 2;
else {
$dbres = mysql_query("SELECT `id` FROM `leden` WHERE `gebruikersnaam`='$gebruikersnaam'");
if(mysql_num_rows($dbres) > 0)
$check = 4;
$dbres = mysql_query("SELECT `id` FROM `leden` WHERE `email`='$email'");
if(mysql_num_rows($dbres) > 0)
$check = 5;
$dbres = mysql_query("SELECT `id` FROM `leden` WHERE `gebruikersnaam`='$ip'");
if(mysql_num_rows($dbres) > 0)
$check = 6;
if($check == -1) {
$rand1 = rand(11,62);
$rand2 = rand(62,999);
$rand3 = rand(11,62);
$rand4 = rand(11,62);
$rand5 = rand(62,999);
$pass = "{$rand1}{$rand2}{$rand3}{$rand4}{$rand5}{$rand6}";
$pass = preg_replace('/11/',"a",$pass);
$pass = preg_replace('/12/',"b",$pass);
$pass = preg_replace('/13/',"c",$pass);
$pass = preg_replace('/14/',"d",$pass);
$pass = preg_replace('/15/',"e",$pass);
$pass = preg_replace('/16/',"f",$pass);
$pass = preg_replace('/17/',"g",$pass);
$pass = preg_replace('/18/',"h",$pass);
$pass = preg_replace('/19/',"i",$pass);
$pass = preg_replace('/20/',"j",$pass);
$pass = preg_replace('/21/',"k",$pass);
$pass = preg_replace('/22/',"l",$pass);
$pass = preg_replace('/23/',"m",$pass);
$pass = preg_replace('/24/',"n",$pass);
$pass = preg_replace('/25/',"o",$pass);
$pass = preg_replace('/26/',"p",$pass);
$pass = preg_replace('/27/',"q",$pass);
$pass = preg_replace('/28/',"r",$pass);
$pass = preg_replace('/29/',"s",$pass);
$pass = preg_replace('/30/',"t",$pass);
$pass = preg_replace('/31/',"u",$pass);
$pass = preg_replace('/32/',"v",$pass);
$pass = preg_replace('/33/',"w",$pass);
$pass = preg_replace('/34/',"x",$pass);
$pass = preg_replace('/35/',"y",$pass);
$pass = preg_replace('/36/',"z",$pass);
$pass = preg_replace('/37/',"A",$pass);
$pass = preg_replace('/38/',"B",$pass);
$pass = preg_replace('/39/',"C",$pass);
$pass = preg_replace('/40/',"D",$pass);
$pass = preg_replace('/41/',"E",$pass);
$pass = preg_replace('/42/',"F",$pass);
$pass = preg_replace('/43/',"Q",$pass);
$pass = preg_replace('/44/',"H",$pass);
$pass = preg_replace('/45/',"I",$pass);
$pass = preg_replace('/46/',"J",$pass);
$pass = preg_replace('/47/',"K",$pass);
$pass = preg_replace('/48/',"L",$pass);
$pass = preg_replace('/49/',"M",$pass);
$pass = preg_replace('/50/',"N",$pass);
$pass = preg_replace('/51/',"O",$pass);
$pass = preg_replace('/52/',"P",$pass);
$pass = preg_replace('/53/',"Q",$pass);
$pass = preg_replace('/54/',"R",$pass);
$pass = preg_replace('/55/',"S",$pass);
$pass = preg_replace('/56/',"T",$pass);
$pass = preg_replace('/57/',"U",$pass);
$pass = preg_replace('/58/',"V",$pass);
$pass = preg_replace('/59/',"W",$pass);
$pass = preg_replace('/60/',"X",$pass);
$pass = preg_replace('/61/',"Y",$pass);
$pass = preg_replace('/62/',"Z",$pass);
$stad1 = Array("","Drenthe","Flevoland","Gelderland","Groningen","Limburg","Noord-Brabant","Noord-Holland","Overijssel","Utrech","Zeeland","Zuid-Holland","");
$stad3 = $stad1[$stad];
$code = rand(100000,999999);
mysql_query("INSERT INTO `leden`(signup,gebruikersnaam,leeftijd,wachtwoord,ip,email,stad,geslacht) values(NOW(),'$gebruikersnaam','$leeftijd',MD5('$pass'),'$ip','$email','$stad4',$geslacht)");
mysql_query("INSERT INTO `tijdelijk`(gebruikersnaam,ip,code,ruimten,tijd) values('$gebruikersnaam','$ip',$code,'aangemeld',NOW())");
$id = mysql_insert_id();
mail($email,"$sitenaam aanmeldings-bevestiging","Beste $gebruikersnaam,
Je hebt je geregistreerd op $sitenaam, en daarom deze e-mail.
Je kunt inloggen met het volgende wachtwoord: $pass
Verander zo spoedig mogelijk je wachtwoord.
Veel plezier met het spelen van $sitenaam.nl!
Met vriendelijke groeten,
Beheerders $sitelink
http://www.$sitelink
","From: $sitenaam <$sitemail>\n");
}
}
}
print <<<ENDHTML
<html>
<head>
<title>{$sitenaam} | Registreren</title>
<link rel="stylesheet" type="text/css" href="index_cw.css" />
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<script language="JavaScript" type="text/javascript">
if(self.name == 'main')
{ top.location.replace ('index.php'); }
</script>
</head>
<body bgcolor="#000000">
<div align="center">
<br /><br />
<table width="50%">
<tr>
<td class="header" valign="middle" align="left"><center>{$sitenaam} Registreren</center></td>
</tr>
</table>
ENDHTML;
if($check != -1) {
if(isset($check) && $check != -1)
print "{$bericht[$check]}\n";
$rec = $_GET['rec'];
print <<<ENDHTML
<br /><br />
<table align="center" width="50%" cellpadding="30">
<tr>
<td class="login" align="left">
<table align="center" width="100%">
<tr>
<td valign="top">
<form method="post"> <dl>
<dt><b>Gebruikersnaam:</b></dt>
<dd><input type="text" name="gebruikersnaam" maxlength=20 style="width: 150;" value="$gebruikersnaam"></dd>
<dt><b>Email-adres:</b></dt>
<dd><input type="text" name="email" maxlength=64 style="width: 150;" value="$email"></dd>
<dt><b>Geslacht:</b></dt>
<dd><select name="geslacht">
<option value="1">Man</option>
<option value="2">Vrouw</option>
</select></dd>
<dt><b>leeftijd:</b></dt>
<dd><input type="text" name="leeftijd" maxlength=16 style="width: 150;" value="$leeftijd"></dd>
<dt><b>Provincie:</b></dt>
<dd><select name="stad" style="width: 150;">
<option value="1">Drenthe</option>
<option value="2">Flevoland</option>
<option value="3">Friesland</option>
<option value="4">Gelderland</option>
<option value="5">Groningen</option>
<option value="6">Limburg</option>
<option value="7">Noord-Brabant</option>
<option value="8">Noord-Holland</option>
<option value="9">Overijssel</option>
<option value="10">Utrecht</option>
<option value="11">Zeeland</option>
<option value="12">Zuid-Holland</option>
</select></dd>
<dt></dt>
<dt><input type="submit" name="submit" style="width: 100;" value="Aanmelden"></dt>
</dl>
</form>
</td>
<td valign="top">
<ul>
<li>Je gebruikersnaam moet minimaal 3 tekens kort zijn en maximaal 20 tekens lang en mag alleen
tekens volgens de a-z, A-Z en/of 0-9 reeks bevatten.</li>
<li>Je moet een geldig email-adres invullen, want daar wordt je wachtwoord heen gestuurd.</li>
<li>Je wachtwoord wordt per e-mail verzonden.</li>
</ul>
</td>
</tr>
</table>
</td>
</tr>
</table>
<br />
<br />
<table width="50%" cellpadding="5">
<tr>
<td class="footer">
<a href="aanmelden.php">Registreren</a> |
</td>
</tr>
</table>
</div>
</body>
</html>
ENDHTML;
}
else
print <<<ENDHTML
<table align="center" width="50%" cellpadding="30">
<tr>
<td class="login" align="left">
<table align="center" width="100%">
<tr>
Gefeliciteerd {$gebruikersnaam}. <br><br>
Je bent nu aangemeld op {$sitenaam}, er is een <b>E-mailtje</b> naar het ingevulde <b>E-mail adres</b> gestuurd met uw van {$sitenaam} vermeld.<br><br>
Als er nog vragen zijn kunt u altijd een mailtje sturen naar <b>{$sitemail}</b><br><br>
</tr>
</table>
</td>
</tr>
</table>
<br />
<br />
<table width="50%" cellpadding="5">
<tr>
<td class="footer">
<a href="aanmelden.php">Registreren</a> |
</td>
</tr>
</table>
</div>
</body>
</html>
ENDHTML;
?>
</table></td>
</body>
</html>
Gewijzigd op 01/01/1970 01:00:00 door Joey van der wal
Je kunt om even de error van de mysql-query's te laten zien van
Code (php)
1
mysql_query("INSERT INTO `leden`(signup,gebruikersnaam,leeftijd,wachtwoord,ip,email,stad,geslacht) values(NOW(),'$gebruikersnaam','$leeftijd',MD5('$pass'),'$ip','$email','$stad4',$geslacht)");
het volgende maken
Code (php)
1
mysql_query("INSERT INTO `leden`(signup,gebruikersnaam,leeftijd,wachtwoord,ip,email,stad,geslacht) values(NOW(),'$gebruikersnaam','$leeftijd',MD5('$pass'),'$ip','$email','$stad4',$geslacht)") or die(mysql_error());
Zo krijg je de error te zien.
En even disclaimer: Dit is geen goede permanente oplossing! Om even naar de error te kijken kan het, maar als je de site online gooit moet je er een goede errorhandler inbouwen!
Pas als je een nette foutafhandeling hebt, kun je afgaande op de foutmeldingen die je krijgt proberen de fouten te vinden...
Ik ben maar een beginner. En heb dit login/ aanmeld script ergens van internet geplukt. maar tog bedankt!
Quote:
Niet lullig bedoeld, maar gooi het dan liever meteen weer weg. Een script met zoveel fouten/problemen, daar heb je echt niets aan...En heb dit login/ aanmeld script ergens van internet geplukt.
Weet jij iets beters?
Gebruik de zoekfunctie.
joey schreef op 21.06.2008 20:11:
Ik weet niet precies waar je naar op zoek bent, maar eigenlijk zul je ervoor moeten zorgen dat je een redelijke basiskennis van PHP en SQL onder de knie hebt voordat je met dit soort scripts aan de slag kunt.Weet jij iets beters?
Mijn tip is dus dat je eerst eens de gegevens tutorials door gaat lezen en dan zelfs wellicht zelf wat gaat scripten. Daar heb je veel meer aan dan dat je een kant en klaar script van internet download...
mvg joey!
Kijk eens in de post van Karl zou ik zeggen!