Rechten bij ledensysteem
Ik heb een ledensysteem gemaakt
nu heb ik in mijn tabel "leden" een veld "status" daar heb ik bij de meeste gebruikers gewoon standaard Lid in laten zetten(standaardwaarde) en bij een aantal Webmaster, Nieuwsposter en Moderator
Nu wil ik als ik inlog met mijn account en ik ben Webmaster dat ik dan de Adminfuncties te zien krijg, Als Piet inlogd en hij is een Moderator dat hij zijn Moderator menu te zien krijgt etc.
hoe fix ik dit ??
groeten.
Je kan hem vinden bij de scripts hier op de site.
Om rechtenniveaus aan te leggen is een goede opbouw van database zeer essentieel.
Dus als ik jou was ging ik daar ook naar kijken.
Suc6 in iedergeval
Hou er rekening mee dat je in de functies zelf ook nog even controlleerd of iemand de juiste rechten heeft. Alleen een linkje naar de pagina verbergen is niet handig ;).
Hebben ook gekeken bij het script alleen het download hier lukt niet helemaal.
Hebben jullie een goed voorbeeld scriptje zodat ik het verder toe kan passen in me ledensysteem??, verder blijf ik zelf ook opzoek ;)
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
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
<?php
// session starten
session_start();
if ($_SESSION['login'] == 'Inloggen') {
switch ($status)
{
case 'admin':
echo "
Welkom <b>".$_SESSION['user']."</b><br><br>
<a href=\"vprofiel.php?id=".$_SESSION['id']."\">Profiel Veranderen</a><br>
<a href=\"profiel.php?id=".$_SESSION['id']."\">Profiel Bekijken</a><br>
<a href=\"ledenlijst.php\">Ledenlijst</a><br><br>
<b>Gastenboek</b><br>
<a href=\"http://www.jznwlnl.org/includes/gboek/voegtoe.php\">Bericht toevoegen</a><br><br>
<b>Overige opties</b><br>
<a href=\"uitloggen.php\">Uitloggen</a>
<br><br>
";
break;
case 'mod':
echo "
Welkom <b>".$_SESSION['user']."</b><br><br>
<a href=\"vprofiel.php?id=".$_SESSION['id']."\">Profiel Veranderen</a><br>
<a href=\"profiel.php?id=".$_SESSION['id']."\">Profiel Bekijken</a><br>
<a href=\"ledenlijst.php\">Ledenlijst</a><br><br>
<b>Gastenboek</b><br>
<a href=\"http://www.jznwlnl.org/includes/gboek/voegtoe.php\">Bericht toevoegen</a><br><br>
<b>Overige opties</b><br>
<a href=\"uitloggen.php\">Uitloggen</a>
<br><br>
";
break;
case 'lezer':
echo "
Welkom <b>".$_SESSION['user']."</b><br><br>
<a href=\"vprofiel.php?id=".$_SESSION['id']."\">Profiel Veranderen</a><br>
<a href=\"profiel.php?id=".$_SESSION['id']."\">Profiel Bekijken</a><br>
<a href=\"ledenlijst.php\">Ledenlijst</a><br><br>
<b>Gastenboek</b><br>
<a href=\"http://www.jznwlnl.org/includes/gboek/voegtoe.php\">Bericht toevoegen</a><br><br>
<b>Overige opties</b><br>
<a href=\"uitloggen.php\">Uitloggen</a>
<br><br>
";
break;
}
?>
// session starten
session_start();
if ($_SESSION['login'] == 'Inloggen') {
switch ($status)
{
case 'admin':
echo "
Welkom <b>".$_SESSION['user']."</b><br><br>
<a href=\"vprofiel.php?id=".$_SESSION['id']."\">Profiel Veranderen</a><br>
<a href=\"profiel.php?id=".$_SESSION['id']."\">Profiel Bekijken</a><br>
<a href=\"ledenlijst.php\">Ledenlijst</a><br><br>
<b>Gastenboek</b><br>
<a href=\"http://www.jznwlnl.org/includes/gboek/voegtoe.php\">Bericht toevoegen</a><br><br>
<b>Overige opties</b><br>
<a href=\"uitloggen.php\">Uitloggen</a>
<br><br>
";
break;
case 'mod':
echo "
Welkom <b>".$_SESSION['user']."</b><br><br>
<a href=\"vprofiel.php?id=".$_SESSION['id']."\">Profiel Veranderen</a><br>
<a href=\"profiel.php?id=".$_SESSION['id']."\">Profiel Bekijken</a><br>
<a href=\"ledenlijst.php\">Ledenlijst</a><br><br>
<b>Gastenboek</b><br>
<a href=\"http://www.jznwlnl.org/includes/gboek/voegtoe.php\">Bericht toevoegen</a><br><br>
<b>Overige opties</b><br>
<a href=\"uitloggen.php\">Uitloggen</a>
<br><br>
";
break;
case 'lezer':
echo "
Welkom <b>".$_SESSION['user']."</b><br><br>
<a href=\"vprofiel.php?id=".$_SESSION['id']."\">Profiel Veranderen</a><br>
<a href=\"profiel.php?id=".$_SESSION['id']."\">Profiel Bekijken</a><br>
<a href=\"ledenlijst.php\">Ledenlijst</a><br><br>
<b>Gastenboek</b><br>
<a href=\"http://www.jznwlnl.org/includes/gboek/voegtoe.php\">Bericht toevoegen</a><br><br>
<b>Overige opties</b><br>
<a href=\"uitloggen.php\">Uitloggen</a>
<br><br>
";
break;
}
?>
</body>
</html>
<html>
<body>
Code (php)
1
2
3
4
5
6
2
3
4
5
6
<?php
echo "Je bent niet ingelogd !<br>
<a href=\"inloggen.php\">Inloggen</a><br>
<a href=\"registreer.php\">Registreren</a>
";
?>
echo "Je bent niet ingelogd !<br>
<a href=\"inloggen.php\">Inloggen</a><br>
<a href=\"registreer.php\">Registreren</a>
";
?>
</body>
</html>
Een pagina zoiets al dit zou wel kloppen??, alleen de $status var alleen nog controleren qua status.
ik ga het proberen!
ergens in config of zo:
Code (php)
en dan op de pagina :
Code (php)
Gewijzigd op 01/01/1970 01:00:00 door Cake Masher
moet je dan niet dit doen??
??>
== != =
$mod = 1; is een toekenning. Een toekenning, wanneer gelukt zal altijd TRUE returnen, dus deze toekenning zal altijd waar zijn.
Is degene die je zoekt.
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
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
<?php
// Rechten en Ranks weergeving.
$status1 = mysql_query("SELECT * FROM leden WHERE id = '".id."'") or die(mysql_error());
$status = mysql_fetch_assoc($status1);
// Webmaster
if($status['status'] == "Webmaster")
{
$webmaster=1;
$moderator=1;
$nieuwsposter=1;
$lid=1;
}
else
{
echo "Geen toegang?";
}
if($status['status'] == "Moderator")
{
$moderator=1
$nieuwsposter=1
}
else
{
echo "Geen toegang?";
}
if($status['status'] == "Nieuwsposter")
{
$nieuwsposter=1
}
else
{
echo "Geen toegang";
}
if($status['status'] == "Lid")
{
$lid=1
}
else
{
echo "Niet geregistreert";
}
?>
// Rechten en Ranks weergeving.
$status1 = mysql_query("SELECT * FROM leden WHERE id = '".id."'") or die(mysql_error());
$status = mysql_fetch_assoc($status1);
// Webmaster
if($status['status'] == "Webmaster")
{
$webmaster=1;
$moderator=1;
$nieuwsposter=1;
$lid=1;
}
else
{
echo "Geen toegang?";
}
if($status['status'] == "Moderator")
{
$moderator=1
$nieuwsposter=1
}
else
{
echo "Geen toegang?";
}
if($status['status'] == "Nieuwsposter")
{
$nieuwsposter=1
}
else
{
echo "Geen toegang";
}
if($status['status'] == "Lid")
{
$lid=1
}
else
{
echo "Niet geregistreert";
}
?>
onder de dbconnectie gezet en toen werkte bij niets meer
www.jznwlnl.org/includes/leden/ledenlijst.php
www.jznwlnl.org/includes/leden/inloggen.php
www.jznwlnl.org/includes/leden/index.php
Heb het weer even teruggezet
dit is mijn index :
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
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
<?php
// config
include('config.php');
// session starten
session_start();
if ($_SESSION['login'] == 'Inloggen') {
//webmaster
if($webmaster == 1)
{
Nieuws wijzigen
Gastenboek
Leden
Artikelen
Scripts
}
else
{
echo "Geen toegang";
}
//moderator
if($moderator == 1)
{
Nieuws wijzigen
Gastenboek
Artikelen
Scripts
}
else
{
echo "Geen toegang";
}
if($nieuwsposter == 1)
{
Nieuws wijzigen
}
else
{
echo "Geen toegang";
}
?>
// config
include('config.php');
// session starten
session_start();
if ($_SESSION['login'] == 'Inloggen') {
//webmaster
if($webmaster == 1)
{
Nieuws wijzigen
Gastenboek
Leden
Artikelen
Scripts
}
else
{
echo "Geen toegang";
}
//moderator
if($moderator == 1)
{
Nieuws wijzigen
Gastenboek
Artikelen
Scripts
}
else
{
echo "Geen toegang";
}
if($nieuwsposter == 1)
{
Nieuws wijzigen
}
else
{
echo "Geen toegang";
}
?>
</body>
</html>
<html>
<body>
Code (php)
1
2
3
4
5
6
2
3
4
5
6
<?php
echo "Je bent niet ingelogd !<br>
<a href=\"inloggen.php\">Inloggen</a><br>
<a href=\"registreer.php\">Registreren</a>
";
?>
echo "Je bent niet ingelogd !<br>
<a href=\"inloggen.php\">Inloggen</a><br>
<a href=\"registreer.php\">Registreren</a>
";
?>
</body>
</html>
de index doet het nog steeds niet die heb ik wel gewoon gelaten, wat zijn de grote fouten??
Gewijzigd op 01/01/1970 01:00:00 door Jznwlnl
Zoals:
admin = 99;
mod = 50;
lid = 1;
en dan doe ik
Code (php)
DIt doe ik omdat een een mod hetzelfde mag als een admin, alleen de admin mag meer. Zo hoef je niet ene paar keer dezelfde pagina aan te maken
Gewijzigd op 01/01/1970 01:00:00 door Zim Zim
hoe kom je aan $rang etc.? moet ik die uit de data base halen of gewoon zo doen:
Code (php)
Zou zoiets kunnen werken ??
dat is makkelijker i.v.m. aanpassingen
Jznwlnl:
moet is admin = 99; etc. in me config zetten??
hoe kom je aan $rang etc.? moet ik die uit de data base halen of gewoon zo doen:
Zou zoiets kunnen werken ??
hoe kom je aan $rang etc.? moet ik die uit de data base halen of gewoon zo doen:
Code (php)
Zou zoiets kunnen werken ??
Hier geef je $rang 5 keer een nieuwe waarde en de laatste $rang=0 is dus de waarde van $rang.
ik werk met assoc
stel ik doe het zo:
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
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
<?php
$status1 = mysql_query("SELECT status FROM table WHERE id = '".$id."'") or die(mysql_error());
$status = mysql_fetch_assoc($status1)
{
if($status['status'] =(=//1 of 2?) "Webmaster")
{
echo "Webmaster menu";
}
else
{
echo "Geen toegang of niet geregistreert";
}
if($status['status'] =(=//1 of 2??) "Moderator")
{
echo "Moderator menu";
}
else
{
echo "Geen toegang of niet geregistreert";
}
}
?>
$status1 = mysql_query("SELECT status FROM table WHERE id = '".$id."'") or die(mysql_error());
$status = mysql_fetch_assoc($status1)
{
if($status['status'] =(=//1 of 2?) "Webmaster")
{
echo "Webmaster menu";
}
else
{
echo "Geen toegang of niet geregistreert";
}
if($status['status'] =(=//1 of 2??) "Moderator")
{
echo "Moderator menu";
}
else
{
echo "Geen toegang of niet geregistreert";
}
}
?>
of dit:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
$status1 = mysql_query("SELECT status FROM table WHERE id = '".$id."'") or die(mysql_error());
$status = mysql_fetch_assoc($status1)
{
$rang = $_SESSION['user'];
$rang = $status['status'];
if($rang == "Webmaster")
{
echo "Webmaster menu":
}
}
?>
$status1 = mysql_query("SELECT status FROM table WHERE id = '".$id."'") or die(mysql_error());
$status = mysql_fetch_assoc($status1)
{
$rang = $_SESSION['user'];
$rang = $status['status'];
if($rang == "Webmaster")
{
echo "Webmaster menu":
}
}
?>
groeten
Wat staat er in de database bij status? Is dat een getal of een woord?
en de standaardwaarde is Lid
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
$status1 = mysql_query("SELECT status FROM table WHERE id = '".$id."'") or die(mysql_error());
$status = mysql_fetch_assoc($status1);
if($status['status'] == "Webmaster")
{
echo "Webmaster menu";
}
elseif($status['status'] == "Moderator")
{
echo "Moderator menu";
}
else
{
echo "Geen toegang of niet geregistreert";
}
?>
$status1 = mysql_query("SELECT status FROM table WHERE id = '".$id."'") or die(mysql_error());
$status = mysql_fetch_assoc($status1);
if($status['status'] == "Webmaster")
{
echo "Webmaster menu";
}
elseif($status['status'] == "Moderator")
{
echo "Moderator menu";
}
else
{
echo "Geen toegang of niet geregistreert";
}
?>
www.jznwlnl.org/includes/leden/index.php is het beeld wit terwijl er eigenlijk "niet ingelogd" moet staan.
Hier mijn script
</body>
</html>
<html>
<body>
</body>
</html>
Ik denk dat vooral het laatste deel fout is(Vanaf de controle van de rang Lid)
Ik heb het bovenstaande toegepast in mijn script, maar zoals je ziet op Hier mijn script
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
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
<?php
// config
include('config.php');
// session starten
session_start();
if ($_SESSION['login'] == 'Inloggen') {
$status1 = mysql_query("SELECT status FROM leden WHERE id = '".$id."'") or die(mysql_error());
$status = mysql_fetch_assoc($status1);
if($status['status'] == "Webmaster")
{
echo "
Welkom <b>".$_SESSION['user']."</b><br><br>
<a href=\"vprofiel.php?id=".$_SESSION['id']."\">Profiel Veranderen</a><br>
<a href=\"profiel.php?id=".$_SESSION['id']."\">Profiel Bekijken</a><br>
<a href=\"ledenlijst.php\">Ledenlijst</a><br><br>
<b>Gastenboek</b><br>
<a href=\"http://www.jznwlnl.org/includes/gboek/voegtoe.php\">Bericht toevoegen</a><br><br>
<b>Overige opties</b><br>
Ledenadmin
Nieuwsadmin
IP Ban
<a href=\"uitloggen.php\">Uitloggen</a>
<br><br>
";
}
elseif($status['status'] == "Moderator")
{
echo "
Welkom <b>".$_SESSION['user']."</b><br><br>
<a href=\"vprofiel.php?id=".$_SESSION['id']."\">Profiel Veranderen</a><br>
<a href=\"profiel.php?id=".$_SESSION['id']."\">Profiel Bekijken</a><br>
<a href=\"ledenlijst.php\">Ledenlijst</a><br><br>
<b>Gastenboek</b><br>
<a href=\"http://www.jznwlnl.org/includes/gboek/voegtoe.php\">Bericht toevoegen</a><br><br>
<b>Overige opties</b><br>
Ledenadmin
<a href=\"uitloggen.php\">Uitloggen</a>
<br><br>
";
}
elseif($status['status'] == "Nieuwsposter")
{
echo "
Welkom <b>".$_SESSION['user']."</b><br><br>
<a href=\"vprofiel.php?id=".$_SESSION['id']."\">Profiel Veranderen</a><br>
<a href=\"profiel.php?id=".$_SESSION['id']."\">Profiel Bekijken</a><br>
<a href=\"ledenlijst.php\">Ledenlijst</a><br><br>
<b>Gastenboek</b><br>
<a href=\"http://www.jznwlnl.org/includes/gboek/voegtoe.php\">Bericht toevoegen</a><br><br>
<b>Overige opties</b><br>
Nieuws posten
<a href=\"uitloggen.php\">Uitloggen</a>
<br><br>
";
}
elseif($status['status'] == "Lid")
{
echo "
Welkom <b>".$_SESSION['user']."</b><br><br>
<a href=\"vprofiel.php?id=".$_SESSION['id']."\">Profiel Veranderen</a><br>
<a href=\"profiel.php?id=".$_SESSION['id']."\">Profiel Bekijken</a><br>
<a href=\"ledenlijst.php\">Ledenlijst</a><br><br>
<b>Gastenboek</b><br>
<a href=\"http://www.jznwlnl.org/includes/gboek/voegtoe.php\">Bericht toevoegen</a><br><br>
<b>Overige opties</b><br>
<a href=\"uitloggen.php\">Uitloggen</a>
<br><br>
";
}
else
{
echo "Geen toegang of niet geregistreert";
?>
// config
include('config.php');
// session starten
session_start();
if ($_SESSION['login'] == 'Inloggen') {
$status1 = mysql_query("SELECT status FROM leden WHERE id = '".$id."'") or die(mysql_error());
$status = mysql_fetch_assoc($status1);
if($status['status'] == "Webmaster")
{
echo "
Welkom <b>".$_SESSION['user']."</b><br><br>
<a href=\"vprofiel.php?id=".$_SESSION['id']."\">Profiel Veranderen</a><br>
<a href=\"profiel.php?id=".$_SESSION['id']."\">Profiel Bekijken</a><br>
<a href=\"ledenlijst.php\">Ledenlijst</a><br><br>
<b>Gastenboek</b><br>
<a href=\"http://www.jznwlnl.org/includes/gboek/voegtoe.php\">Bericht toevoegen</a><br><br>
<b>Overige opties</b><br>
Ledenadmin
Nieuwsadmin
IP Ban
<a href=\"uitloggen.php\">Uitloggen</a>
<br><br>
";
}
elseif($status['status'] == "Moderator")
{
echo "
Welkom <b>".$_SESSION['user']."</b><br><br>
<a href=\"vprofiel.php?id=".$_SESSION['id']."\">Profiel Veranderen</a><br>
<a href=\"profiel.php?id=".$_SESSION['id']."\">Profiel Bekijken</a><br>
<a href=\"ledenlijst.php\">Ledenlijst</a><br><br>
<b>Gastenboek</b><br>
<a href=\"http://www.jznwlnl.org/includes/gboek/voegtoe.php\">Bericht toevoegen</a><br><br>
<b>Overige opties</b><br>
Ledenadmin
<a href=\"uitloggen.php\">Uitloggen</a>
<br><br>
";
}
elseif($status['status'] == "Nieuwsposter")
{
echo "
Welkom <b>".$_SESSION['user']."</b><br><br>
<a href=\"vprofiel.php?id=".$_SESSION['id']."\">Profiel Veranderen</a><br>
<a href=\"profiel.php?id=".$_SESSION['id']."\">Profiel Bekijken</a><br>
<a href=\"ledenlijst.php\">Ledenlijst</a><br><br>
<b>Gastenboek</b><br>
<a href=\"http://www.jznwlnl.org/includes/gboek/voegtoe.php\">Bericht toevoegen</a><br><br>
<b>Overige opties</b><br>
Nieuws posten
<a href=\"uitloggen.php\">Uitloggen</a>
<br><br>
";
}
elseif($status['status'] == "Lid")
{
echo "
Welkom <b>".$_SESSION['user']."</b><br><br>
<a href=\"vprofiel.php?id=".$_SESSION['id']."\">Profiel Veranderen</a><br>
<a href=\"profiel.php?id=".$_SESSION['id']."\">Profiel Bekijken</a><br>
<a href=\"ledenlijst.php\">Ledenlijst</a><br><br>
<b>Gastenboek</b><br>
<a href=\"http://www.jznwlnl.org/includes/gboek/voegtoe.php\">Bericht toevoegen</a><br><br>
<b>Overige opties</b><br>
<a href=\"uitloggen.php\">Uitloggen</a>
<br><br>
";
}
else
{
echo "Geen toegang of niet geregistreert";
?>
</body>
</html>
<html>
<body>
Code (php)
1
2
3
4
5
6
2
3
4
5
6
<?php
echo "Je bent niet ingelogd !<br>
<a href=\"inloggen.php\">Inloggen</a><br>
<a href=\"registreer.php\">Registreren</a>
";
?>
echo "Je bent niet ingelogd !<br>
<a href=\"inloggen.php\">Inloggen</a><br>
<a href=\"registreer.php\">Registreren</a>
";
?>
</body>
</html>
Ik denk dat vooral het laatste deel fout is(Vanaf de controle van de rang Lid)
Gewijzigd op 01/01/1970 01:00:00 door Jznwlnl