2017-03-19 4 views
0

explained matterPHP Multi-Level-Zulassung

i ein System für ein Unternehmen haben, dass sie mehrere Filialen in anderen Provinzen haben. alle Zweige sind voneinander getrennt der Chef dieser Firma gebeten uns, dass Branch_1 Manager nicht zu sehen oder die Daten von Branch_2 und umgekehrt von ihm zu sehen. so durch alle Zweige. Jede Zweigstelle hat mehrere Mitarbeiter und jeder Mitarbeiter einer Zweigstelle kann die relevanten Daten dieser Zweigstelle einfügen, und die Mitarbeiter können keine anderen Steuerelemente für Daten haben. Ich habe das System von reinem PHP und MySQL gemacht. schließlich möchte ich einen guten Weg, um dieses Projekt fortzuführen.

+0

Und Sie klar wollen, dass alle Daten in den gleichen Tabellen in derselben Datenbank lesen? Normalerweise würde ich vorschlagen, jedem Zweig eine eigene Datenbank zu geben. Es ist der beste Weg, absolute Trennung zu gewährleisten, und es ist einfach. –

+0

@ KIKO Software Aber es ist schwierig, Daten der gesamten Organisation zu erhalten, wenn Filiale unterschiedliche Datenbank haben –

+0

Ich weiß das, aber der Kunde der Chef will seine alle Daten an einem Ort integriert. Danke KIKO Software. –

Antwort

0

Sie können es mit Benutzertabelle in der Datenbank tun, indem Sie user_role, is_super_admin, default_branch_id usw. definieren und Benutzer durch das Speichern von default_branch_id in der Sitzung steuern.

  • Wie Sie Branch_id in Sitzung speichern. Wenn sich ein Benutzer von branch_1 dann anmeldet, kann er Branch_1-Daten sehen.
  • Durch define user_role_id in Benutzertabelle können Sie unterschiedliche Benutzer unterschiedliche Berechtigungen geben. Zum Beispiel:
     
    role_id=1 means Super Admin. He has control all over the system. 
    role_id=2 means Admin. He has control on a single branch. 
    role_id=3 means HR. He has see report only` 
    

für Rolle weise Privileg können Sie Tutorial auf role wise privilege in php oder here

+0

wow, gute Idee, danke Rafiq –