Registreren op mn site
Even snel een klein vraagje heb nu een registratie script geschreven. Alles werkt behalve de foutmelding: ""<center>Deze gebruikersnaam bestaat al, ga terug en kies een ander.</center>";"
Wie weet waar de fout zit?
Hier mijn code:
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
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
<?php
$datum = date("Y/m/d");
if(isset($_POST['submit'])){
$voornaam = $_POST['voornaam'];
$tussenvoegsel = $_POST['tussenvoegsel'];
$achternaam = $_POST['achternaam'];
$gebruikersnaam = $_POST['gebruikersnaam'];
$emailadres = $_POST['emailadres'];
$wachtwoord1 = $_POST['wachtwoord1'];
$wachtwoord2 = $_POST['wachtwoord2'];
$profielfoto = $_POST['profielfoto'];
$geslacht = $_POST['geslacht'];
if($_POST['voornaam'] && $_POST['achternaam'] && $_POST['gebruikersnaam'] && $_POST['emailadres'] && $_POST['wachtwoord1'] && $_POST['wachtwoord2'] && $_POST['profielfoto'] && $_POST['geslacht']){
if($wachtwoord1 == $wachtwoord2){
require "connection.php";
$checkNameQuery = mysql_query("SELECT gebruikersnaam FROM leden WHERE gebruikersnaam='$gebruikersnaam'");
$NameFound = mysql_num_rows($checkNameQuery);
if($NameFound == 1) {
if(mysql_num_rows(mysql_query("SELECT emailadres FROM leden WHERE emailadres='$emailadres'"))==0){
mysql_query("INSERT INTO leden (voornaam, tussenvoegsel, achternaam, gebruikersnaam, emailadres, wachtwoord, datum, profielfoto, geslacht) VALUES ('$voornaam', '$tussenvoegsel', '$achternaam', '$gebruikersnaam', '$emailadres', '$wachtwoord1', '$datum', '$profielfoto', '$geslacht')");
?>
<div class="right_column_box_title">
<? echo "Welkom $voornaam"; ?>
</div><div class="right_column_section_box">
<?
echo "<center>Je bent succesvol geregistreerd!<br>Aan de linkerkant kan je inloggen.<br><br>Veel plezier op deze site ;-)</center>";
}else{
echo "<center>Dit email adres is al geregistreerd.<br><a href='javascript:history.back()'>klik hier om terug te gaan</a></center>";
}
}else{
echo "<center>Wachtwoorden komen niet overeen<br><a href='javascript:history.back()'>klik hier om terug te gaan</a></center>";
}
}else{
echo "<center>Deze gebruikersnaam bestaat al, ga terug en kies een ander.</center>";
}
}else{
echo "<center>Niet alle velden ingevuld<br><a href='javascript:history.back()'>klik hier om terug te gaan</a></center>";
}
?></div><?
}else{
?>
<?php
if(isset($_SESSION['login'])){
$_SESSION['login'] = "$username";
?><div class="right_column_box_title">
<? echo "Welkom $username"; ?>
</div><div class="right_column_section_box"><?
echo "<br>Je bent al ingelogd gekkie, dan hoef je je toch niet meer te registreren!<br>";
?></div><?
}else{
?></center>
<form name="form1" method="post" action="<?php $_SERVER['PHP_SELF']; ?>">
<div class="right_column_box_title">
Registratie
</div>
<div class="right_column_section_box">
<br>
<table width="600">
<tr>
<td width="20"> </td>
<td width="580">
<table width="410" border="0">
<tr>
<td width="160"> Voornaam: * </td>
<td width="240"><input name="voornaam" type="text" size="40" maxlength="30"></td>
</tr>
<tr>
<td> Tussenvoegsel: </td>
<td><input name="tussenvoegsel" type="text" size="40" maxlength="10"></td>
</tr>
<tr>
<td> Achternaam: * </td>
<td><input name="achternaam" type="text"size="40" maxlength="30"></td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td> Gebruikersnaam: * </td>
<td><input name="gebruikersnaam" type="text" id="gebruikersnaam" size="40" maxlength="12"></td>
</tr>
<tr>
<td> Email Adres: * </td>
<td><input name="emailadres" type="text" size="40" maxlength="80"></td>
</tr>
<tr>
<td> Wachtwoord: * </td>
<td><input name="wachtwoord1" type="password" size="40" maxlength="20"></td>
</tr>
<tr>
<td> Wachtwoord herhalen: * </td>
<td><input name="wachtwoord2" type="password" size="40" maxlength="20"></td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td> Profielfoto <i>(http://)</i>: * </td>
<td><input name="profielfoto" type="text"size="40" maxlength="200"></td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td><i>Overige Informatie:</i></td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td>Geslacht: * </td>
<td><label>
<select name="geslacht" size="1">
<option>Man</option>
<option>Vrouw</option>
</select>
</label></td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td><input type="submit" name="submit" value="Registreer"></td>
</tr>
<tr>
<td>* Verplichte velden. </td>
<td> </td>
</tr>
</table></td>
</tr></table>
</form></div>
<?php
}
}
?>
$datum = date("Y/m/d");
if(isset($_POST['submit'])){
$voornaam = $_POST['voornaam'];
$tussenvoegsel = $_POST['tussenvoegsel'];
$achternaam = $_POST['achternaam'];
$gebruikersnaam = $_POST['gebruikersnaam'];
$emailadres = $_POST['emailadres'];
$wachtwoord1 = $_POST['wachtwoord1'];
$wachtwoord2 = $_POST['wachtwoord2'];
$profielfoto = $_POST['profielfoto'];
$geslacht = $_POST['geslacht'];
if($_POST['voornaam'] && $_POST['achternaam'] && $_POST['gebruikersnaam'] && $_POST['emailadres'] && $_POST['wachtwoord1'] && $_POST['wachtwoord2'] && $_POST['profielfoto'] && $_POST['geslacht']){
if($wachtwoord1 == $wachtwoord2){
require "connection.php";
$checkNameQuery = mysql_query("SELECT gebruikersnaam FROM leden WHERE gebruikersnaam='$gebruikersnaam'");
$NameFound = mysql_num_rows($checkNameQuery);
if($NameFound == 1) {
if(mysql_num_rows(mysql_query("SELECT emailadres FROM leden WHERE emailadres='$emailadres'"))==0){
mysql_query("INSERT INTO leden (voornaam, tussenvoegsel, achternaam, gebruikersnaam, emailadres, wachtwoord, datum, profielfoto, geslacht) VALUES ('$voornaam', '$tussenvoegsel', '$achternaam', '$gebruikersnaam', '$emailadres', '$wachtwoord1', '$datum', '$profielfoto', '$geslacht')");
?>
<div class="right_column_box_title">
<? echo "Welkom $voornaam"; ?>
</div><div class="right_column_section_box">
<?
echo "<center>Je bent succesvol geregistreerd!<br>Aan de linkerkant kan je inloggen.<br><br>Veel plezier op deze site ;-)</center>";
}else{
echo "<center>Dit email adres is al geregistreerd.<br><a href='javascript:history.back()'>klik hier om terug te gaan</a></center>";
}
}else{
echo "<center>Wachtwoorden komen niet overeen<br><a href='javascript:history.back()'>klik hier om terug te gaan</a></center>";
}
}else{
echo "<center>Deze gebruikersnaam bestaat al, ga terug en kies een ander.</center>";
}
}else{
echo "<center>Niet alle velden ingevuld<br><a href='javascript:history.back()'>klik hier om terug te gaan</a></center>";
}
?></div><?
}else{
?>
<?php
if(isset($_SESSION['login'])){
$_SESSION['login'] = "$username";
?><div class="right_column_box_title">
<? echo "Welkom $username"; ?>
</div><div class="right_column_section_box"><?
echo "<br>Je bent al ingelogd gekkie, dan hoef je je toch niet meer te registreren!<br>";
?></div><?
}else{
?></center>
<form name="form1" method="post" action="<?php $_SERVER['PHP_SELF']; ?>">
<div class="right_column_box_title">
Registratie
</div>
<div class="right_column_section_box">
<br>
<table width="600">
<tr>
<td width="20"> </td>
<td width="580">
<table width="410" border="0">
<tr>
<td width="160"> Voornaam: * </td>
<td width="240"><input name="voornaam" type="text" size="40" maxlength="30"></td>
</tr>
<tr>
<td> Tussenvoegsel: </td>
<td><input name="tussenvoegsel" type="text" size="40" maxlength="10"></td>
</tr>
<tr>
<td> Achternaam: * </td>
<td><input name="achternaam" type="text"size="40" maxlength="30"></td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td> Gebruikersnaam: * </td>
<td><input name="gebruikersnaam" type="text" id="gebruikersnaam" size="40" maxlength="12"></td>
</tr>
<tr>
<td> Email Adres: * </td>
<td><input name="emailadres" type="text" size="40" maxlength="80"></td>
</tr>
<tr>
<td> Wachtwoord: * </td>
<td><input name="wachtwoord1" type="password" size="40" maxlength="20"></td>
</tr>
<tr>
<td> Wachtwoord herhalen: * </td>
<td><input name="wachtwoord2" type="password" size="40" maxlength="20"></td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td> Profielfoto <i>(http://)</i>: * </td>
<td><input name="profielfoto" type="text"size="40" maxlength="200"></td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td><i>Overige Informatie:</i></td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td>Geslacht: * </td>
<td><label>
<select name="geslacht" size="1">
<option>Man</option>
<option>Vrouw</option>
</select>
</label></td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td><input type="submit" name="submit" value="Registreer"></td>
</tr>
<tr>
<td>* Verplichte velden. </td>
<td> </td>
</tr>
</table></td>
</tr></table>
</form></div>
<?php
}
}
?>
Gewijzigd op 01/01/1970 01:00:00 door Danny
en leest wat fijner
steen schreef op 10.06.2009 17:10:
en leest wat fijner
Ik denk dat ik net heb uitgevonden hoe:
en
YEAH!!!
@ Danny. Remember the [ignore][/ignore] tags!:D
Dit heb jij in je script staan. Met andere woorden, als de gebruikersnaam al bestaat, ga jij vervolgens verder met het toevoegen van de nieuwe gebruiker. Lijkt mij dat je hier van de 1 een 0 moet maken...
Thanks, ik heb dat gewijzigd en mn foutmelding is nu "Wachtwoorden komen niet overeen".
Heb ik de else tekens met foutmeldingen soms fout door elkaar staan?
Vervangen door:
zo staat $voornaam buiten de quotes zo hoort het. Mocht je meerdere in 1 echo willen of nog text erachter een . gebruiken net zoals je hier ziet:
de laatste is een mogelijkheid ("text."tessst"") maar niet slim..
Thnx Danny zal het wijzigen ;)
Danny schreef op 10.06.2009 17:19:
Daar lijkt het wel op. Contrleer je scripts nog eens en kijk dan met name of de juiste else wel bij de juiste if staat...Heb ik de else tekens met foutmeldingen soms fout door elkaar staan?
Thnxx
Mooi, dan is het nu tijd om eens naar de veiligheid van je script te kijken. Lekken als SQL injectie zijn namelijk genoeg te vinden. Ook het nutteloos kopieren van variabelen en het niet buiten quotes halen van variabelen zie ik regelmatig terug komen.