fout in registratie script
Deprecated: Function eregi() is deprecated in C:\wamp\www\voetbal\registreren.php on line 7
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
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
<?php
ini_set('display_errors',1); // 1 == aan , 0 == uit
error_reporting(E_ALL | E_STRICT);
include('includes/config.php');
if(isset($_POST['registreer'])){
function email_validator($email){
if (eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,4}$",$email))
{$geldig = 'ja'; }
else{$geldig = 'nee';}
return $geldig;
}
function email_check($email){
$email_query = "SELECT speler_email FROM speler WHERE speler_email='".$email."';";
$email_sql = mysql_query($email_query)or die(mysql_error());
if(mysql_num_rows($email_sql) == 0)
{$bezet = 'nee';}
else{$bezet = 'ja' ;}
return $bezet;
}
function spelersnaam_check($spelersnaam){
$spelersnaam_query = "SELECT speler_naam FROM speler WHERE speler_naam='".$spelersnaam."';";
$spelersnaam_sql = mysql_query($spelersnaam_query)or die(mysql_error());
if(mysql_num_rows($spelersnaam_sql) == 0)
{$bezet = 'nee' ;}
else{$bezet = 'ja';}
return $bezet;
}
if(trim($_POST['spelersnaam']) == ""){
echo 'U heeft geen spelersnaam ingevuld';
}elseif(spelersnaam_check($_POST['spelersnaam']) == 'ja'){
echo 'Deze spelersnaam is al in gebruik, kies a.u.b een ander.';
}elseif($_POST['wachtwoord1'] != $_POST['wachtwoord2']){
echo 'De opgegeven wachtwoorden komen niet overeen';
}elseif($_POST['wachtwoord1'] == ""){
echo 'Er zijn geen wachtwoord<b>en</b> opgegeven';
}elseif(email_validator($_POST['emailadres']) == 'nee'){
echo 'Het ingevulde emailadres is niet geldig';
}elseif(email_check($_POST['emailadres']) == 'ja'){
echo 'Er is al iemand geregistreerd met dit emailadres.';
}else{
$query = "INSERT INTO speler
(speler_naam, speler_wachtwoord, speler_email)
VALUES
('".mysql_real_escape_string($_POST['spelersnaam'])."',
'".md5($_POST['wachtwoord1'])."',
'".$_POST['emailadres']."');";
$sql = mysql_query($query)or die(mysql_error());
echo 'U bent succesvol aangemeld. Hieronder kunt u inloggen:';
include('inloggen.php');
}
}else{
?>
<form action="registreren.php" method="POST">
<table>
<tr><td>Spelernaam:</td><td><input type="text" name="spelersnaam" value=""></td></tr>
<tr><td>Wachtwoord:</td><td><input type="password" name="wachtwoord1" value=""></td></tr>
<tr><td>Wachtwoord nogmaals:</td><td><input type="password" name="wachtwoord2" value=""></td></tr>
<tr><td>Emailadres:</td><td><input type="text" name="emailadres" value=""></td></tr>
<tr><td></td><td><input type="submit" name="registreer" value="Aanmelden">
</table>
</form>
<?php
}
?>
ini_set('display_errors',1); // 1 == aan , 0 == uit
error_reporting(E_ALL | E_STRICT);
include('includes/config.php');
if(isset($_POST['registreer'])){
function email_validator($email){
if (eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,4}$",$email))
{$geldig = 'ja'; }
else{$geldig = 'nee';}
return $geldig;
}
function email_check($email){
$email_query = "SELECT speler_email FROM speler WHERE speler_email='".$email."';";
$email_sql = mysql_query($email_query)or die(mysql_error());
if(mysql_num_rows($email_sql) == 0)
{$bezet = 'nee';}
else{$bezet = 'ja' ;}
return $bezet;
}
function spelersnaam_check($spelersnaam){
$spelersnaam_query = "SELECT speler_naam FROM speler WHERE speler_naam='".$spelersnaam."';";
$spelersnaam_sql = mysql_query($spelersnaam_query)or die(mysql_error());
if(mysql_num_rows($spelersnaam_sql) == 0)
{$bezet = 'nee' ;}
else{$bezet = 'ja';}
return $bezet;
}
if(trim($_POST['spelersnaam']) == ""){
echo 'U heeft geen spelersnaam ingevuld';
}elseif(spelersnaam_check($_POST['spelersnaam']) == 'ja'){
echo 'Deze spelersnaam is al in gebruik, kies a.u.b een ander.';
}elseif($_POST['wachtwoord1'] != $_POST['wachtwoord2']){
echo 'De opgegeven wachtwoorden komen niet overeen';
}elseif($_POST['wachtwoord1'] == ""){
echo 'Er zijn geen wachtwoord<b>en</b> opgegeven';
}elseif(email_validator($_POST['emailadres']) == 'nee'){
echo 'Het ingevulde emailadres is niet geldig';
}elseif(email_check($_POST['emailadres']) == 'ja'){
echo 'Er is al iemand geregistreerd met dit emailadres.';
}else{
$query = "INSERT INTO speler
(speler_naam, speler_wachtwoord, speler_email)
VALUES
('".mysql_real_escape_string($_POST['spelersnaam'])."',
'".md5($_POST['wachtwoord1'])."',
'".$_POST['emailadres']."');";
$sql = mysql_query($query)or die(mysql_error());
echo 'U bent succesvol aangemeld. Hieronder kunt u inloggen:';
include('inloggen.php');
}
}else{
?>
<form action="registreren.php" method="POST">
<table>
<tr><td>Spelernaam:</td><td><input type="text" name="spelersnaam" value=""></td></tr>
<tr><td>Wachtwoord:</td><td><input type="password" name="wachtwoord1" value=""></td></tr>
<tr><td>Wachtwoord nogmaals:</td><td><input type="password" name="wachtwoord2" value=""></td></tr>
<tr><td>Emailadres:</td><td><input type="text" name="emailadres" value=""></td></tr>
<tr><td></td><td><input type="submit" name="registreer" value="Aanmelden">
</table>
</form>
<?php
}
?>
Wat tips verder:
- $_POST['emailadres'] in je query kent SQL-injection
- Je foutafhandeling in je query kan beter
- md5() als encryptie is inmiddels achterhaald.
- Waarom gebruik je niet gewoon in je email_validator een true en false?
Gewijzigd op 10/07/2013 19:18:28 door - Ariën -