Um die Rechte zu prüfen, wurde vorher folgende Methode verwenden.
Variable-Deklaration in einer php-Klasse mit Rechtebezeichnung/ rechteflags
Bsp-Code:
Klasse A - ( Für Constants)
define ('RIGHT_ADMIN',0);
define (‚RIGHT_USERMGMT‘,1);
$rights= array(RIGHT_ADMIN=> „Admin“,
RIGHT_USERMGMT => "Userververwaltung")
Damit man einen „User“ prüfen, ob ein User eine Transaktion durchführen kann oder nicht, wurde eine Methode in der „auth_class“ implementiert, die die Variable ( define ('RIGHT_ADMIN', 0)) zugreift.
Klasse B - (für Überprüfung von der Recht )
Zum Beispiel:
$rightsflags='RIGHT_ADMIN', ( VON KLASSE A siehe Oben)
Function check_rights($rightflags) {
// rechte holen
If(rightflags!=null){
// Admin?
If ($this->right_current_user[RIGHT_ADMIN]==1) Return True;
// Spezifisches Recht?
Return $this-> right_current_user [$rightflag]==1?True:False;
} }
Aber jetzt muss ich die „define“-Variable in der Datenbank ablegen und weglöschen und die Arrays nicht mehr als normale Parameter lesen, sondern die Arrays soll von der Datenbank ausgefüllen und anzeigen.
(diese wurde erledigt.).
Nachdem ich alle Rechte in Datenbank umgezogen habe, die ( als „define-Variable“) vorher deklariert wurde ( Das heißt die Klasse A sollte leider nicht mehr existieren).
Muss trotzdem die Überprüfung der Rechte immer noch funktionieren -> das heißt die function „check_rights($rightsflags)“ muss weiter funktioniert.
Meine Frage:
Kann jemand mir bitte sagen, wie ich am Bestens machen kann, um „die Klasse B und die function „check_rights($rightsflags)“ anzupassen, damit ich am Schluss komplette von der Klasse A verzichten kann, weil alles muss von DB gefüllt werden. Nicht mehr von „define“-Variable.
Ich hoffe, dass ihr meine Frage verstanden habt, falls etwas unklar ist,, könnt ihr mir gerne Frage stellen.
Vielen Dank im Voraus! Und Über eine Antwort und Idee würde ich mich sehr freuen.
Variable-Deklaration in einer php-Klasse mit Rechtebezeichnung/ rechteflags
Bsp-Code:
Klasse A - ( Für Constants)
define ('RIGHT_ADMIN',0);
define (‚RIGHT_USERMGMT‘,1);
$rights= array(RIGHT_ADMIN=> „Admin“,
RIGHT_USERMGMT => "Userververwaltung")
Damit man einen „User“ prüfen, ob ein User eine Transaktion durchführen kann oder nicht, wurde eine Methode in der „auth_class“ implementiert, die die Variable ( define ('RIGHT_ADMIN', 0)) zugreift.
Klasse B - (für Überprüfung von der Recht )
Zum Beispiel:
$rightsflags='RIGHT_ADMIN', ( VON KLASSE A siehe Oben)
Function check_rights($rightflags) {
// rechte holen
If(rightflags!=null){
// Admin?
If ($this->right_current_user[RIGHT_ADMIN]==1) Return True;
// Spezifisches Recht?
Return $this-> right_current_user [$rightflag]==1?True:False;
} }
Aber jetzt muss ich die „define“-Variable in der Datenbank ablegen und weglöschen und die Arrays nicht mehr als normale Parameter lesen, sondern die Arrays soll von der Datenbank ausgefüllen und anzeigen.
(diese wurde erledigt.).
Nachdem ich alle Rechte in Datenbank umgezogen habe, die ( als „define-Variable“) vorher deklariert wurde ( Das heißt die Klasse A sollte leider nicht mehr existieren).
Muss trotzdem die Überprüfung der Rechte immer noch funktionieren -> das heißt die function „check_rights($rightsflags)“ muss weiter funktioniert.
Meine Frage:
Kann jemand mir bitte sagen, wie ich am Bestens machen kann, um „die Klasse B und die function „check_rights($rightsflags)“ anzupassen, damit ich am Schluss komplette von der Klasse A verzichten kann, weil alles muss von DB gefüllt werden. Nicht mehr von „define“-Variable.
Ich hoffe, dass ihr meine Frage verstanden habt, falls etwas unklar ist,, könnt ihr mir gerne Frage stellen.
Vielen Dank im Voraus! Und Über eine Antwort und Idee würde ich mich sehr freuen.