Homepage selbermachen 7.851 Themen, 35.615 Beiträge

PHP & MySQL & Sessions & Berechtigungen

Hobbes / 8 Antworten / Flachansicht Nickles

Jetzt wird\'s knifflig ;-)

Ich habe eine MySQL-Datenbank mit ca. 100 Datensätzen gefüllt (Name, Adresse und ein paar weitere Daten).
Nun soll jeder dieser 100 Personen einen username und password bekommen. Damit soll sich dann jeder User einloggen und die komplette Datenbank durchsuchen, jedoch nur seine eigenen Daten verändern können.

Ich nehme an, das muß ich irgendwie mit Sessions & Co. realisieren (mit PHP Lib habe ich schon ein wenig herumgespielt, aber da kann ich nur den Zugriff auf bestimmte Seiten und nicht auf Bereiche der Datenbank beschränken).

Kennt sich jemand damit aus? Oder weiß jemand, wo ich ein fertiges Skript herbekomme oder wo es ein Tutorial / eine Anleitung zu diesem Thema gibt?

Vielen Dank!

Gruß,
Hobbes

bei Antwort benachrichtigen
Anonym Hobbes „PHP & MySQL & Sessions & Berechtigungen“
Optionen

Hi,

ich weiß nicht genau, ob ich Dir damit helfen kann, aber ich habe so etwas bei PHPMyAdmin erlebt. Mein Webhoster bietet diese Schnittstelle und ich habe nur Zugriff auf meine Datenbank. Die anderen kann ich weder sehen noch darauf zugreifen. Das Prinzip konnte ich zuhause auf meinem Entwickungsserver kopieren, indem ich direkt in mySQL die Benutzer hinzugefügt habe. Das Problem wird aber dann wahrscheinlich sein, daß Du keinen Zugriff darauf hast, oder? Dort kann man genau definieren, was ein Benutzer machen darf und was nicht (nur innerhalb der Datenbank).

Ich greife nochmal Deinen Thread auf:
Komplette Datenbank durchsuchen ist null problemo. Einfach alle Datensätze selecten, vielleicht noch sortieren und ausgeben. Zur besseren Übersicht könnte man auf der Startseite nur den Namen zeigen und eine Detailansicht anbieten. Die Editierung der Daten erfolgt dann nur, wenn der gerade bearbeitete Username, dem des Logins, entspricht. Dann wird ein weiterer Link mit einem Änderungsformular offenbart. Das ist aber die Problematik, die Dir klar ist und die Du bereits gelöst hast, oder? (Ich fange von hinten an, da ich leider nicht ganz Deine Absichten verstanden habe :) )

Was meinst Du mit "bestimmte Bereiche der Datenbank"?
Einen Versuch habe ich schon am Anfang vorgeschlagen. Sonst fällt mir nur ein den Zugriff in dem SELECT-Befehl einzuschränken. Für jeden User müßten also Zugriffsrechte definiert werden, die einen dynamischen SELECT-Query erzeugen. Dieser regelt dann, was ein User sehen darf und was nicht. Sperren kannst Du ganz einfach, indem Du keine Änderungsformulare etc. in der Webseite anbietest.

So, das waren meine spontanten Ideen. Vielleicht helfen sie ja ein wenig...

Archilles

bei Antwort benachrichtigen