Zugriff per Session der Benutzer auf bestimmte Dateien

nukleuz

Grünschnabel
Hallo zusammen,

mich plagt folgendes zu realisieren:

es ist nun endlich soweit, dass unser firmeninterner Bereich eine Benutzerverwaltung bekommen soll. Ich bin derjenige der die sache umzusetzen hat ;)
Ein funktionierendes Login-System habe ich schon auf die Beine gestellt doch mir stellt sich
dabei jetzt folgendes problem:

ich möchte nach der Anmeldung der Benutzer im geschützten Bereich jedem den Zugriff auf fast allen seiten gestatten bis auf 3 Seiten die wirklich nur für denjenigen zu sehen sein sollen, dia auch wirklich angemeldet sind. Wie bekomme ich das hin?
Jeder Benutzer bekommt einmal die Woche eine Auswertung (PHP-Script)
die seine Mitarbeiter nun wirklich nichts angehen...
Hatte schon sehr viel überlegt doch nichts gescheites darüber gefunden...
Habe hier schon sehr viel über sessions und logins gelesen doch noch nicht in dieser Richtung. Woanders bin ich auch nicht schlau geworden..

Ich hoffe ihr könnt mir weiterhelfen?

vielen dank

nukleuz
 
Du könntest zum Beispiel die Benutzernamen verschiedenen Gruppen zuordnen. Von mir aus eine Gruppe die alles sieht, und eine die eben die 3 Seiten nicht sieht. Wenn also Gruppe 1 sich einloggt (die alles sehen), bekommen die die Navigationsansicht 1 und sind auch berechtigt die 3 Seiten zu sehen.

Die Gruppe 2 bekommt halt eine Navigationsansicht wo keine Links zu den 3 Seiten zu finden sind, UND die 3 Seiten können sie auch nicht direkt aufrufen, da du die ja hoffentlich die Berechtigungen in jedem File prüfst.

Um das Prüfen einfach zu halten kannst z.B. eine Variable in die Session schreiben die heisst: $Berechtigung="Alles" oder eben "Eingeschraenkt"

Eine andere Möglichkeit wäre auch, das mit htaccess zu lösen......

Lg,
Choco
 
Hallo Chocobanana und danke für deine rasche Antwort,

da ich ein anfänger in sachen solcher programmierung in php bin muss ich leider fragen stellen um mehr einsicht in die materie zu bekommen. das wichtigste an meinem vorhaben ist:

ein angemeldeter benutzer xy soll nach der anmeldung einen link in der navigation mehr bekommen (wie z.B. bei foren wo jeder seine individuellen einstellungen am profil vornehmen kann) wo er nur seiten , dateien und bilder die nur für ihn bestimmt sind abrufen kann. dieses soll für alle user gelten doch jeder soll seine eigenen dateien und seiten zugeordnet bekommen.

wie ist das am besten zu realisieren

wäre dankbar für ein wenig beispielcode oder ähnliches

vielen dank
 
Also ich denke mal das was Chocobanana gesagt hat mit den Sessions ist noch mal besten. Einfach den benutzern die rechte in der mysql datenbank per neuer spalte zuordnen und über dein PHP Script auslesen und in Sessions speichern. Und bei den seiten überprüfen ob Berechtigung die gleich wie die, die man für die Seite benötigt ist.Wenn du nicht weisst wie Code beispiel poste ich dir gerne.

Gruß
 
Kleines Beispiel wie du das mit Sessions realisieren kannst:


Die Datei im beispiel muss test.php heissen.
PHP:
<?php
echo'
<form action="test.php" method="post">
<input name="rechte" type="text">
<input name="Senden" type="submit" value="Senden">
</form>';

if(isset($_POST['Senden']))	{
$_SESSION['rechte'] = $_POST['rechte'];

if($_SESSION['rechte']=="Admin")	{
	echo "Sie haben die rechte";
}
else
{
echo "Sie haben nicht die rechte diese Seite zusehen.";
}
}
?>

In diesem Beispiel musst du in Das Input feld Admin eingeben und bist sogesagt eingeloogt wenn du was anderes eingibst den nicht, vieleicht Hilft dir das ja.
 
Zuletzt bearbeitet:
echt klasse mit den schnellen antworten hier ;)
ich wäre sehr dankbar für ein einfaches beispiel
damit ich mit weiter in die sachen reinfuchsen kann.
die erweiterung um eine spalte in der datenbank bekomme ich noch
hin. doch wie oder was muss ich auf den seiten machen wo wirklich nur ein
user drauf zugriff haben soll?

wäre sehr dankbar für beispiel

nukleuz
 
ich muss getsehen ich dachte doch ein wenigmehr ahnung zu haben doch ich habe da ne blockade im kopf. ich bekomme das nicht umgestezt in verbindung mit meiner datenbank.
habe meine neue spalte"rechte" hinzugefügt. wie gehe ich weiter vor um das gesetzte recht in der datenbank mit dem zu vergleichen welches dieseite hat auf die zugegriffen werden soll? das prinzipwie es funktioniert habe ich verstanden...

danke
 
Wenn der User sich einloggt liest du ja die Daten aus einer Datenbank aus. Und in dem fall Speicherst du die Rechte des benutzers in eine Session und überprüfen kannst du es so.

PHP:
if($_SESSION['rechte']=="dein Recht")
{
echo "hier der Inhalt deiner Seite die nur der User mit den bestimmten Rechten sehen darf";
}
else
{
echo "Sie haben nicht die Rechte die folgende Seite zu sehen.";
}

Wie du überprüfst ob ein User eingeloggt ist weisst du doch oder?

Gruß
 
@powerplayer

ein anmeldescript habe ich schon geschrieben, von daher weiss ich auch wie ich überprüfe ob ein benutzer angemeldet ist oder nicht. verstanden habe ich auch den code den du gepostet hast - doch leider kann ich es auf dieser maschine nicht ausprobieren - muss leider bis morgen warten...

Ich habe 200 user zu verwalten, die alle auf mindest 5 dateien/seiten zugreifen müssen die für jeden individuell gestalltet wird - denn da verstehe ich nicht die Rechtevergabe - muss ich denn jedem user ein einzelnes recht geben oder kann ich auch die ID auf den entsprechenden seiten des users abfragen?


ausserdem möchte ich für jeden angemeldeten user wie eine rubrik/profil in dem sich die links auf die berechtigten dateien befinden - wie bewrkstellige ich das am besten?

danke
 
Also mit der Userrechte vergabe, In meinem Loginscript wenn sich da welche Registrieren, bekommen Sie das Recht: User. Über ein Intern meiner Seite kann ich Admins registrieren. Und so würde ich es auch an deine stelle machen.
 
Zurück