Toon posts:

[PHP] beveiligings script*

Pagina: 1
Acties:
  • 36 views sinds 30-01-2008

Verwijderd

Topicstarter
Ik heb een beveiligings script gemaakt, maar het werkt niet echt goed.

Het werkt met statussen dus als ik als status admin heb mag alleen ik het deel van de admin zien.

maar als het hele gebeuren op user staat dan kan ik er niet in met mijn admin status. kan iemand helpen
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
<?php 

veiligheid("user"); 

    $gebruikersnaam = $_SESSION[gebruikersnaam]; 
    $wachtwoord = $_SESSION[wachtwoord]; 


function veiligheid($type) {  
     
include ("config.php"); 
     
    if ($_SESSION[gebruikersnaam] == "" AND $_SESSION[wachtwoord] == "") {   // Niet ingelogd dus iedereen kan erin 
         
        if ($type = "nietlid") { 
             
                $toegang = 1; 
             
            } else { 
             
                $toegang = 0; 
                exit; 
            } 
    } 
    else { 
        if ($type = "admin") { 
            $sql = "SELECT * FROM leden WHERE status = 'admin' AND gebruikersnaam = '$gebruikersnaam' AND paswoord = '$wachtwoord' AND activeer = '1'"; 
            $query = mysql_query($sql) or die (mysql_error()); 
            $aantal = mysql_num_rows($query); 
             
                if ($aantal != 1) { 
                     
                    $toegang = 0; 
                } else { 
                    $toegang = 1; 
                } 
            } elseif ($type = "smod") { 
                $sql = "SELECT * FROM leden WHERE gebruikersnaam = '$gebruikersnaam' AND paswoord = '$wachtwoord' AND status = 'admin' OR status = 'smod' AND activeer = '1'"; 
                $query = mysql_query($sql) or die (mysql_error()); 
                $aantal = mysql_num_rows($query); 
                 
                if ($aantal != 1) { 
                     
                    $toegang = 0; 
                } else {  
                    $toegang = 1; 
                } 
            } elseif ($type = "mod") { 
                $sql = "SELECT * FROM leden WHERE gebruikersnaam = '$gebruikersnaam' AND paswoord = '$wachtwoord' AND status = 'admin' OR status = 'smod' OR status = 'mod' AND activeer = '1'"; 
                $query = mysql_query($sql) or die (mysql_error()); 
                $aantal = mysql_num_rows($query); 
                     
                    if ($aantal != 1) { 
                        $toegang = 0; 
                    } else { 
                        $toegang = 1; 
                    } 
                } elseif ($type = "user") { 
                    $sql = "SELECT * FROM leden WHERE gebruikersnaam = '$gebruikersnaam' AND paswoord = '$wachtwoord' AND status = 'admin' OR status = 'smod' OR status = 'mod' OR status = 'user' AND activeer = '1'"; 
                    $query = mysql_query($sql) or die (mysql_error()); 
                    $aantal = mysql_num_rows($query); 
                     
                    if ($aantal != 1) { 
                        $toegang = 0; 
                    } else { 
                        $toegang = 1; 
                    } 
                } 
            exit; 
                } 

            }     
                    if ($toegang == 0) { 
                        echo "Je bent niet bevoegd om deze pagina te bekijken.<br>"; 
                        echo "Hiervoor is het noodzakelijk dat je je registreert.<br>"; 
                        echo "Als je al bent ingelogd heb je niet genoeg rechten om deze pagina te bekijken<br>"; 
                        echo "Registreren kun je <a href=\"index.php?id=ledensysteem/meld_aan\" target=_SELF>hier</a> doen.<br>"; 
                         
                    exit; 
                }         
     
     
?>

[ Voor 9% gewijzigd door Verwijderd op 22-08-2003 21:34 ]


  • Sponge
  • Registratie: Januari 2002
  • Laatst online: 15-08 11:47

Sponge

Serious Game Developer

Ten eerste zou ik even de FAQ doorlezen over code tags enzo :)

Verder ben ik zelf niet zo'n PHP held, maar

moet

code:
1
if ($type = "nietlid")


niet

code:
1
2
//(dubbele =)
if ($type == "nietlid")


zijn? :)

Lijkt mij misschien het probleem :)

[ Voor 19% gewijzigd door Sponge op 22-08-2003 21:15 ]


Verwijderd

Topicstarter
Ja zal ik voortaan naar kijken sorry

  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 21-08 18:29
Zet er even code tags omheen want zo is het niet leesbaar, je kunt je bericht editten.
Ook leuk om de quickstart een keer te lezen, daarin staat o.a.(leestum dus toch) dat je moet aangeven wat het niet goed doet of wat het zou moeten doen en wat de foutmeldingen zijn.

Verwijderd

Topicstarter
zo beter??

  • Eegee
  • Registratie: Januari 2000
  • Laatst online: 00:37
Zie het = / == verhaal van 41.6C.6D.61.72. Voor alle
code:
1
if ($type = "X") (FOUT!)
uit je stukje code. Fix dat eerst, dan zal 't al heel wat beter werken.

Verwijderd

Topicstarter
Ik heb hem nu zo

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
<?php



    $gebruikersnaam = $_SESSION[gebruikersnaam];
    $wachtwoord = $_SESSION[wachtwoord];


function veiligheid($type) { 
    
include ("config.php");
    
    if ($_SESSION[gebruikersnaam] == "" AND $_SESSION[wachtwoord] == "") {   // Niet ingelogd dus iedereen kan erin
        
        if ($type == "nietlid") {
            
                $toegang = 1;
            
            } else {
            
                $toegang = 0;
                exit;
            }
    }
    else {
        if ($type == "admin") {
            $sql = "SELECT * FROM leden WHERE status = 'admin' AND gebruikersnaam = '$gebruikersnaam' AND paswoord = '$wachtwoord' AND activeer = '1'";
            $query = mysql_query($sql) or die (mysql_error());
            $aantal = mysql_num_rows($query);
            
                if ($aantal != 1) {
                    
                    $toegang = 0;
                } else {
                    $toegang = 1;
                }
            } elseif ($type == "smod") {
                $sql = "SELECT * FROM leden WHERE gebruikersnaam = '$gebruikersnaam' AND paswoord = '$wachtwoord' AND status = 'admin' OR status = 'smod' AND activeer = '1'";
                $query = mysql_query($sql) or die (mysql_error());
                $aantal = mysql_num_rows($query);
                
                if ($aantal != 1) {
                    
                    $toegang = 0;
                } else { 
                    $toegang = 1;
                }
            } elseif ($type == "mod") {
                $sql = "SELECT * FROM leden WHERE gebruikersnaam = '$gebruikersnaam' AND paswoord = '$wachtwoord' AND status = 'admin' OR status = 'smod' OR status = 'mod' AND activeer = '1'";
                $query = mysql_query($sql) or die (mysql_error());
                $aantal = mysql_num_rows($query);
                    
                    if ($aantal != 1) {
                        $toegang = 0;
                    } else {
                        $toegang = 1;
                    }
                } elseif ($type == "user") {
                    $sql = "SELECT * FROM leden WHERE gebruikersnaam = '$gebruikersnaam' AND paswoord = '$wachtwoord' AND status = 'admin' OR status = 'smod' OR status = 'mod' OR status = 'user' AND activeer = '1'";
                    $query = mysql_query($sql) or die (mysql_error());
                    $aantal = mysql_num_rows($query);
                    
                    if ($aantal != 1) {
                        $toegang = 0;
                    } else {
                        $toegang = 1;
                    }
                }
            exit;
                }

            }   
                    if ($toegang == 0) {
                        echo "Je bent niet bevoegd om deze pagina te bekijken.<br>";
                        echo "Hiervoor is het noodzakelijk dat je je registreert.<br>";
                        echo "Als je al bent ingelogd heb je niet genoeg rechten om deze pagina te bekijken<br>";
                        echo "Registreren kun je <a href=\"index.php?id=ledensysteem/meld_aan\" target=_SELF>hier</a> doen.<br>";
                        
                    exit;
                }       
    
    
?>


en het werkt nog niet??

[ Voor 12% gewijzigd door Verwijderd op 22-08-2003 21:42 ]


  • Sponge
  • Registratie: Januari 2002
  • Laatst online: 15-08 11:47

Sponge

Serious Game Developer

Het werkt met statussen dus als ik als status admin heb mag alleen ik het deel van de admin zien.

maar als het hele gebeuren op user staat dan kan ik er niet in met mijn admin status. kan iemand helpen
Dat klopt dan toch? :) als je USER status hebt, dan kan je het admin niet zien? :) en anders, wat is "gebeuren" :)

  • dusty
  • Registratie: Mei 2000
  • Laatst online: 21-02 00:06

dusty

Celebrate Life!

"IK heb hier een script, het werkt niet, los het eens op voor mij" - type vraag.

Lees de FAQ eens door, en laat dan in je volgende topic zien wat je zelf hebt geprobeerd.

Daarnaast zet ook eens commentaar bij je code, maakt het allemaal duidelijker wat je doet, voor jezelf EN voor andere mensen.

Back In Black!
"Je moet haar alleen aan de ketting leggen" - MueR

Pagina: 1

Dit topic is gesloten.