Problemen met inlogscript.
Maar ik krijg elke keer mijn html form voor het invoeren erbij wat doe ik verkeerd ?????????
het script is als volgt
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
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
<?php
session_start();//een sessie starten
include('data.inc.php');// de gegevens laden voor mysql aanlog
if ($_SESSION['ingelogd']==="Wel"){// controle of er al ingelogd is d.m.v. controle of sessie al een password toegeken heeft gekregen.
Print"U bent al ingelogd.";
}else{
include('loginform.html');
}
if(isset($_POST['submit'])){// kijken of loginform.html al gesubmit is
if((!empty($_POST['gebruikersnaam']))&&(!empty($_POST['wachtwoord']))){// controleren of 1 van de 2 velden niet leeg is
include("connection.php");
//De opgehaalde gegevens aan een variabele toewijzen.
$gebruiker=$_POST['gebruikersnaam'];
$qryOphalenInlogGegevens= "SELECT * FROM gebruikers WHERE NicknameGebruiker =('$gebruiker')";
//De opgehaalde gegevens aan een variabele toewijzen.
If ($r=mysql_query($qryOphalenInlogGegevens)){
// De opgehaalde waarde weergeven
while($rlogin = mysql_fetch_array($r)){
if($rlogin['WachtwoordGebruiker']===md5($_POST['wachtwoord'])){
//De waarde meegeven aan de sessie zodat de gegevens indien nodig gebruikt kunnen worden
$_SESSION['username']=$gebruiker;
$_SESSION['naam']=$rlogin['NaamGebruiker'];
$_SESSION['adres']=$rlogin['AdresGebruiker'];
$_SESSION['postcode']=$rlogin['PostcodeGebruiker'];
$_SESSION['plaats']=$rlogin['PlaatsGebruiker'];
$_SESSION['telefoon']=$rlogin['TelefoonnummerGebruiker'];
$_SESSION['faxnummer']=$rlogin['FaxnummerGebruiker'];
$_SESSION['emailadres']=$rlogin['EmailAdresGebruiker'];
$_SESSION['ingelogd']="Wel";
mysql_close();
}else{
mysql_close();
echo"<p>foutief wachtwoord</p>";
}
}
}
}else{//De tekst voor als een gebruikersnaam of wachtwoord of beide vergeten worden.
echo"<p>Vul een gebruikersnaam en een wachtwoord in anders kan u niet aangemeld worden.</p>";
}
}
?>
session_start();//een sessie starten
include('data.inc.php');// de gegevens laden voor mysql aanlog
if ($_SESSION['ingelogd']==="Wel"){// controle of er al ingelogd is d.m.v. controle of sessie al een password toegeken heeft gekregen.
Print"U bent al ingelogd.";
}else{
include('loginform.html');
}
if(isset($_POST['submit'])){// kijken of loginform.html al gesubmit is
if((!empty($_POST['gebruikersnaam']))&&(!empty($_POST['wachtwoord']))){// controleren of 1 van de 2 velden niet leeg is
include("connection.php");
//De opgehaalde gegevens aan een variabele toewijzen.
$gebruiker=$_POST['gebruikersnaam'];
$qryOphalenInlogGegevens= "SELECT * FROM gebruikers WHERE NicknameGebruiker =('$gebruiker')";
//De opgehaalde gegevens aan een variabele toewijzen.
If ($r=mysql_query($qryOphalenInlogGegevens)){
// De opgehaalde waarde weergeven
while($rlogin = mysql_fetch_array($r)){
if($rlogin['WachtwoordGebruiker']===md5($_POST['wachtwoord'])){
//De waarde meegeven aan de sessie zodat de gegevens indien nodig gebruikt kunnen worden
$_SESSION['username']=$gebruiker;
$_SESSION['naam']=$rlogin['NaamGebruiker'];
$_SESSION['adres']=$rlogin['AdresGebruiker'];
$_SESSION['postcode']=$rlogin['PostcodeGebruiker'];
$_SESSION['plaats']=$rlogin['PlaatsGebruiker'];
$_SESSION['telefoon']=$rlogin['TelefoonnummerGebruiker'];
$_SESSION['faxnummer']=$rlogin['FaxnummerGebruiker'];
$_SESSION['emailadres']=$rlogin['EmailAdresGebruiker'];
$_SESSION['ingelogd']="Wel";
mysql_close();
}else{
mysql_close();
echo"<p>foutief wachtwoord</p>";
}
}
}
}else{//De tekst voor als een gebruikersnaam of wachtwoord of beide vergeten worden.
echo"<p>Vul een gebruikersnaam en een wachtwoord in anders kan u niet aangemeld worden.</p>";
}
}
?>
<!-- html eind tags voor het geval dat er niet ingelogd is en het loginform.html word ingevoegd -->
</body>
</html>
Gewijzigd op 27/03/2006 21:11:00 door Peter Prijs
2. een 10 voor je avatar (not)
zo iets simpels zit tezoeken. Kon mijn toetsenbord wel op eten gelukkig heeft iemand de titel al aangepast!!
En is deze Avatar wat vriendelijker ??
Stefan bedankt man !!!!!
ik heb het als volgt gedaan.
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
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
<?php
session_start();//een sessie starten
include('data.inc.php');// de gegevens laden voor mysql aanlog
if ($_SESSION['ingelogd']==="Wel"){// controle of er al ingelogd is d.m.v. controle of sessie al een password toegeken heeft gekregen.
Print"U bent al ingelogd.";
exit();
}
if(isset($_POST['submit'])){// kijken of loginform.html al gesubmit is
if((!empty($_POST['gebruikersnaam']))&&(!empty($_POST['wachtwoord']))){// controleren of 1 van de 2 velden niet leeg is
include("connection.php");
//De opgehaalde gegevens aan een variabele toewijzen.
$gebruiker=$_POST['gebruikersnaam'];
$qryOphalenInlogGegevens= "SELECT * FROM gebruikers WHERE NicknameGebruiker =('$gebruiker')";
//De opgehaalde gegevens aan een variabele toewijzen.
If ($r=mysql_query($qryOphalenInlogGegevens)){
// De opgehaalde waarde weergeven
while($rlogin = mysql_fetch_array($r)){
if($rlogin['WachtwoordGebruiker']===md5($_POST['wachtwoord'])){
//De waarde meegeven aan de sessie zodat de gegevens indien nodig gebruikt kunnen worden
$_SESSION['username']=$gebruiker;
$_SESSION['naam']=$rlogin['NaamGebruiker'];
$_SESSION['adres']=$rlogin['AdresGebruiker'];
$_SESSION['postcode']=$rlogin['PostcodeGebruiker'];
$_SESSION['plaats']=$rlogin['PlaatsGebruiker'];
$_SESSION['telefoon']=$rlogin['TelefoonnummerGebruiker'];
$_SESSION['faxnummer']=$rlogin['FaxnummerGebruiker'];
$_SESSION['emailadres']=$rlogin['EmailAdresGebruiker'];
$_SESSION['ingelogd']="Wel";
mysql_close();
Print"U bent ingelogd";
}else{
mysql_close();
echo"<p>foutief wachtwoord</p>";
}
}
}
}else{//De tekst voor als een gebruikersnaam of wachtwoord of beide vergeten worden.
echo"<p>Vul een gebruikersnaam en een wachtwoord in anders kan u niet aangemeld worden.</p>";
}
}else{
include('loginform.html');
}
?>
session_start();//een sessie starten
include('data.inc.php');// de gegevens laden voor mysql aanlog
if ($_SESSION['ingelogd']==="Wel"){// controle of er al ingelogd is d.m.v. controle of sessie al een password toegeken heeft gekregen.
Print"U bent al ingelogd.";
exit();
}
if(isset($_POST['submit'])){// kijken of loginform.html al gesubmit is
if((!empty($_POST['gebruikersnaam']))&&(!empty($_POST['wachtwoord']))){// controleren of 1 van de 2 velden niet leeg is
include("connection.php");
//De opgehaalde gegevens aan een variabele toewijzen.
$gebruiker=$_POST['gebruikersnaam'];
$qryOphalenInlogGegevens= "SELECT * FROM gebruikers WHERE NicknameGebruiker =('$gebruiker')";
//De opgehaalde gegevens aan een variabele toewijzen.
If ($r=mysql_query($qryOphalenInlogGegevens)){
// De opgehaalde waarde weergeven
while($rlogin = mysql_fetch_array($r)){
if($rlogin['WachtwoordGebruiker']===md5($_POST['wachtwoord'])){
//De waarde meegeven aan de sessie zodat de gegevens indien nodig gebruikt kunnen worden
$_SESSION['username']=$gebruiker;
$_SESSION['naam']=$rlogin['NaamGebruiker'];
$_SESSION['adres']=$rlogin['AdresGebruiker'];
$_SESSION['postcode']=$rlogin['PostcodeGebruiker'];
$_SESSION['plaats']=$rlogin['PlaatsGebruiker'];
$_SESSION['telefoon']=$rlogin['TelefoonnummerGebruiker'];
$_SESSION['faxnummer']=$rlogin['FaxnummerGebruiker'];
$_SESSION['emailadres']=$rlogin['EmailAdresGebruiker'];
$_SESSION['ingelogd']="Wel";
mysql_close();
Print"U bent ingelogd";
}else{
mysql_close();
echo"<p>foutief wachtwoord</p>";
}
}
}
}else{//De tekst voor als een gebruikersnaam of wachtwoord of beide vergeten worden.
echo"<p>Vul een gebruikersnaam en een wachtwoord in anders kan u niet aangemeld worden.</p>";
}
}else{
include('loginform.html');
}
?>
<!-- html eind tags voor het geval dat er niet ingelogd is en het loginform.html word ingevoegd -->
</body>
</html>
Werkt perfect
Thnx
dit is als volgt.
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
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
<?php
session_start();//een sessie starten
include('data.inc.php');// de gegevens laden voor mysql aanlog
if ($_SESSION['ingelogd']==="Wel"){// controle of er al ingelogd is d.m.v. controle of sessie al een password toegeken heeft gekregen.
Print"U bent al ingelogd.";
exit();
}
if(isset($_POST['submit'])){// kijken of loginform.html al gesubmit is
if((!empty($_POST['gebruikersnaam']))&&(!empty($_POST['wachtwoord']))){// controleren of 1 van de 2 velden niet leeg is
include("connection.php");
//De opgehaalde gegevens aan een variabele toewijzen.
$gebruiker=$_POST['gebruikersnaam'];
$gebruiker=mysql_real_escape_string($gebruiker);
$password=$_POST['wachtwoord'];
$password=mysql_real_escape_string($password);
$qryOphalenInlogGegevens= "SELECT * FROM gebruikers WHERE NicknameGebruiker =('$gebruiker')";
//De opgehaalde gegevens aan een variabele toewijzen.
If ($r=mysql_query($qryOphalenInlogGegevens)){
// De opgehaalde waarde weergeven
while($rlogin = mysql_fetch_array($r)){
if($rlogin['WachtwoordGebruiker']===sha1($password)){
//De waarde meegeven aan de sessie zodat de gegevens indien nodig gebruikt kunnen worden
$_SESSION['username']=$gebruiker;
$_SESSION['naam']=$rlogin['NaamGebruiker'];
$_SESSION['adres']=$rlogin['AdresGebruiker'];
$_SESSION['postcode']=$rlogin['PostcodeGebruiker'];
$_SESSION['plaats']=$rlogin['PlaatsGebruiker'];
$_SESSION['telefoon']=$rlogin['TelefoonnummerGebruiker'];
$_SESSION['faxnummer']=$rlogin['FaxnummerGebruiker'];
$_SESSION['emailadres']=$rlogin['EmailAdresGebruiker'];
$_SESSION['ingelogd']="Wel";
mysql_close();
Print"U bent ingelogd";
}else{
mysql_close();
echo"<p>foutief wachtwoord</p>";
}
}
}
}else{//De tekst voor als een gebruikersnaam of wachtwoord of beide vergeten worden.
echo"<p>Vul een gebruikersnaam en een wachtwoord in anders kan u niet aangemeld worden.</p>";
}
}else{
include('loginform.html');
}
?>
session_start();//een sessie starten
include('data.inc.php');// de gegevens laden voor mysql aanlog
if ($_SESSION['ingelogd']==="Wel"){// controle of er al ingelogd is d.m.v. controle of sessie al een password toegeken heeft gekregen.
Print"U bent al ingelogd.";
exit();
}
if(isset($_POST['submit'])){// kijken of loginform.html al gesubmit is
if((!empty($_POST['gebruikersnaam']))&&(!empty($_POST['wachtwoord']))){// controleren of 1 van de 2 velden niet leeg is
include("connection.php");
//De opgehaalde gegevens aan een variabele toewijzen.
$gebruiker=$_POST['gebruikersnaam'];
$gebruiker=mysql_real_escape_string($gebruiker);
$password=$_POST['wachtwoord'];
$password=mysql_real_escape_string($password);
$qryOphalenInlogGegevens= "SELECT * FROM gebruikers WHERE NicknameGebruiker =('$gebruiker')";
//De opgehaalde gegevens aan een variabele toewijzen.
If ($r=mysql_query($qryOphalenInlogGegevens)){
// De opgehaalde waarde weergeven
while($rlogin = mysql_fetch_array($r)){
if($rlogin['WachtwoordGebruiker']===sha1($password)){
//De waarde meegeven aan de sessie zodat de gegevens indien nodig gebruikt kunnen worden
$_SESSION['username']=$gebruiker;
$_SESSION['naam']=$rlogin['NaamGebruiker'];
$_SESSION['adres']=$rlogin['AdresGebruiker'];
$_SESSION['postcode']=$rlogin['PostcodeGebruiker'];
$_SESSION['plaats']=$rlogin['PlaatsGebruiker'];
$_SESSION['telefoon']=$rlogin['TelefoonnummerGebruiker'];
$_SESSION['faxnummer']=$rlogin['FaxnummerGebruiker'];
$_SESSION['emailadres']=$rlogin['EmailAdresGebruiker'];
$_SESSION['ingelogd']="Wel";
mysql_close();
Print"U bent ingelogd";
}else{
mysql_close();
echo"<p>foutief wachtwoord</p>";
}
}
}
}else{//De tekst voor als een gebruikersnaam of wachtwoord of beide vergeten worden.
echo"<p>Vul een gebruikersnaam en een wachtwoord in anders kan u niet aangemeld worden.</p>";
}
}else{
include('loginform.html');
}
?>
<!-- html eind tags voor het geval dat er niet ingelogd is en het loginform.html word ingevoegd -->
</body>
</html>
Nu is het alleen als je een foute gebruiker met een fout wachtwoord op geeft dat de pagina wit wordt
Code (php)
1
2
3
2
3
<?php
$qryOphalenInlogGegevens= "SELECT * FROM gebruikers WHERE NicknameGebruiker =('$gebruiker')";
?>
$qryOphalenInlogGegevens= "SELECT * FROM gebruikers WHERE NicknameGebruiker =('$gebruiker')";
?>
waar de nul geeft dan ??
Bedankt!!!!!!!!
Naar 3 uur modderen met het geen hierboven.
En naar jouw nieuws script kijken ben ik er uit!!
Ik heb het als volgt opgelost:
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
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
<?php
session_start();//een sessie starten
include('data.inc.php');// de gegevens laden voor mysql aanlog
if ($_SESSION['ingelogd']==="Wel"){// controle of er al ingelogd is d.m.v. controle of sessie al een password toegeken heeft gekregen.
Print"U bent al ingelogd.";
exit();
}
if(isset($_POST['submit'])){
if(!empty($_POST['gebruikersnaam'])){
$user=$_POST['gebruikersnaam'];
}else{
echo"u geeft geen gebruikersnaam ingevoerd<br />";
}
if(!empty($_POST['wachtwoord'])){
$password=$_POST['wachtwoord'];
}else{
echo"u geeft geen wachtwoord ingevoerd<br />";
}
if((!empty($_POST['gebruikersnaam']))&&(!empty($_POST['wachtwoord']))){
include("connection.php");
$user=mysql_real_escape_string($user);
$password=mysql_real_escape_string($password);
$qryOphalenInlogGegevens= "SELECT * FROM gebruikers WHERE NicknameGebruiker =('$user')";
$r = mysql_query($qryOphalenInlogGegevens);
if ($r){
$rij = mysql_num_rows($r);
}else{
$rij = 0;
}
if($rij===0){
print"u heeft een verkeerde combinatie ingetikt";
}else{
while($rlogin = mysql_fetch_array($r)){
if($rlogin['WachtwoordGebruiker']===sha1($password)){
//De waarde meegeven aan de sessie zodat de gegevens indien nodig gebruikt kunnen worden
$_SESSION['username']=$gebruiker;
$_SESSION['naam']=$rlogin['NaamGebruiker'];
$_SESSION['adres']=$rlogin['AdresGebruiker'];
$_SESSION['postcode']=$rlogin['PostcodeGebruiker'];
$_SESSION['plaats']=$rlogin['PlaatsGebruiker'];
$_SESSION['telefoon']=$rlogin['TelefoonnummerGebruiker'];
$_SESSION['faxnummer']=$rlogin['FaxnummerGebruiker'];
$_SESSION['emailadres']=$rlogin['EmailAdresGebruiker'];
$_SESSION['ingelogd']="Wel";
mysql_close();
Print"U bent ingelogd";
}else{
mysql_close();
echo"<p>Foutief Wachtwoord!</p>";
}
}
}
}
}else{
include('loginform.html');
}
?>
session_start();//een sessie starten
include('data.inc.php');// de gegevens laden voor mysql aanlog
if ($_SESSION['ingelogd']==="Wel"){// controle of er al ingelogd is d.m.v. controle of sessie al een password toegeken heeft gekregen.
Print"U bent al ingelogd.";
exit();
}
if(isset($_POST['submit'])){
if(!empty($_POST['gebruikersnaam'])){
$user=$_POST['gebruikersnaam'];
}else{
echo"u geeft geen gebruikersnaam ingevoerd<br />";
}
if(!empty($_POST['wachtwoord'])){
$password=$_POST['wachtwoord'];
}else{
echo"u geeft geen wachtwoord ingevoerd<br />";
}
if((!empty($_POST['gebruikersnaam']))&&(!empty($_POST['wachtwoord']))){
include("connection.php");
$user=mysql_real_escape_string($user);
$password=mysql_real_escape_string($password);
$qryOphalenInlogGegevens= "SELECT * FROM gebruikers WHERE NicknameGebruiker =('$user')";
$r = mysql_query($qryOphalenInlogGegevens);
if ($r){
$rij = mysql_num_rows($r);
}else{
$rij = 0;
}
if($rij===0){
print"u heeft een verkeerde combinatie ingetikt";
}else{
while($rlogin = mysql_fetch_array($r)){
if($rlogin['WachtwoordGebruiker']===sha1($password)){
//De waarde meegeven aan de sessie zodat de gegevens indien nodig gebruikt kunnen worden
$_SESSION['username']=$gebruiker;
$_SESSION['naam']=$rlogin['NaamGebruiker'];
$_SESSION['adres']=$rlogin['AdresGebruiker'];
$_SESSION['postcode']=$rlogin['PostcodeGebruiker'];
$_SESSION['plaats']=$rlogin['PlaatsGebruiker'];
$_SESSION['telefoon']=$rlogin['TelefoonnummerGebruiker'];
$_SESSION['faxnummer']=$rlogin['FaxnummerGebruiker'];
$_SESSION['emailadres']=$rlogin['EmailAdresGebruiker'];
$_SESSION['ingelogd']="Wel";
mysql_close();
Print"U bent ingelogd";
}else{
mysql_close();
echo"<p>Foutief Wachtwoord!</p>";
}
}
}
}
}else{
include('loginform.html');
}
?>
Mocht iemand nog op of aanmerkingen hebben m.b.t.
Tot dit script in welke vorm dan ook hoor ik het graag !!
Alvast bedankt
En nogmaals dank aan onze moderator.
Met vriendelijke groet,
De beginner
Gewijzigd op 28/03/2006 19:44:00 door Peter Prijs
Code (php)
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
<?PHP
$gebruiker=$_POST['gebruikersnaam'];
$qryOphalenInlogGegevens= "SELECT * FROM gebruikers WHERE NicknameGebruiker =('$gebruiker')"; If ($r=mysql_query($qryOphalenInlogGegevens)){
if($rlogin = mysql_fetch_array($r)){
if($rlogin['WachtwoordGebruiker']===md5($_POST['wachtwoord'])){
$_SESSION['username']=$gebruiker;
$_SESSION['ip'] = $_SERVER['REMOTE_ADDR'];
}
?>
$gebruiker=$_POST['gebruikersnaam'];
$qryOphalenInlogGegevens= "SELECT * FROM gebruikers WHERE NicknameGebruiker =('$gebruiker')"; If ($r=mysql_query($qryOphalenInlogGegevens)){
if($rlogin = mysql_fetch_array($r)){
if($rlogin['WachtwoordGebruiker']===md5($_POST['wachtwoord'])){
$_SESSION['username']=$gebruiker;
$_SESSION['ip'] = $_SERVER['REMOTE_ADDR'];
}
?>
en dan boven elke beveiligde pagina:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
<?PHP
if($_SESSION['ip'] == $_SERVER['REMOTE_ADDR']){
$qryOphalenInlogGegevens= "SELECT * FROM gebruikers WHERE NicknameGebruiker =('".$_SESSION['username']."')";
If ($r=mysql_query($qryOphalenInlogGegevens)){
$users = @mysql_fetch_array($r);
}
}else{
echo "Vieze vuile hacker";
exit();
}
?>
if($_SESSION['ip'] == $_SERVER['REMOTE_ADDR']){
$qryOphalenInlogGegevens= "SELECT * FROM gebruikers WHERE NicknameGebruiker =('".$_SESSION['username']."')";
If ($r=mysql_query($qryOphalenInlogGegevens)){
$users = @mysql_fetch_array($r);
}
}else{
echo "Vieze vuile hacker";
exit();
}
?>
Dan kan je in plaats van $_SESSIONs alle gegevens uit je database halen, en is het dus minder gevoelig voor SESSION HIJACKING.