| | | | |
| |||||||
| Software-Design Diskussionen auf Profi-Niveau: PHP Lösungen auf konzeptioneller Ebene |
|
| | LinkBack | Themen-Optionen | Thema bewerten |
| | |
| Erfahrener Benutzer Registriert seit: 08.08.2009
Beiträge: 195
PHP-Kenntnisse: Fortgeschritten ![]() | Meine aktuelle Webapplikation soll Mandanten fähig sein unter berücksichtigung folgender Punkte: 1. Gemeinsames nutzen der Systemdateien. ( Wartungsfreundlichkeit ) 2. Login via E-Mail Adresse ( Der gleiche Benutzer kann aber bei mehreren Mandanten registriert sein ) 3. Eigene Datenbank für jeden Mandant. ( Backup/Restor Problematik ) 4. Benutzerdateien für jeden Mandant seperat gespeichert in seinem Verzeichnis. Ich habe mir das wie folgt überlegt: Mandant A ist zum Beispiel Muster AG Mandant B ist zum Beispiel Peter GmbH Mandant A ruft die Seite via: https://muster.meineapp.com Mandant B ruft die Seite via: https://peter.meineapp.com auf. Soweit so gut. Die Struktur auf dem Server sieht wie folgt aus: HST-meineapp/ HST-peter-meineapp/ HSt-meier-meineapp/ Im Ordner der jeweiligen Subdomain befindet sich eine PHP Datei wie folgt: PHP-Code: Gibts einen Fix, dann braucht man nur 1x die entsprechende Datei zu erstetzen anstelle von 100x bei jedem Mandanten einzeln. Die Datenbankstruktur ( vereinfacht dargestellt ) sieht wie folgt aus: Master DB: meineapp Tabelle: meineapp_customers ID | Domain 1 | muster 2 | peter Eine Funktion welche im dispatcher.php aufgerufen wird subtrahiert von der URL ( als. Beispiel https://muster.meineapp.com/de/proje...s-projekt.html ) die Subdomain. Danach wird die gefilterte Subdomain "muster" in der Master Datenbank in der Tabelle meineapp_customers gesucht. Wenn vorhanden wird die ID zurückgegeben und in der Session der Datenbankname gespeichert. meineapp_customer_db_1 ( Datenbank der Muster AG ) meineapp_customer_db_2 ( Datenbank der Peter GmbH ) Somit hat jeder Mandant seine eigene Datenbank sowie alle Dateien in seinem eigenen Verzeichnis auf dem Server HST-meier-meineapp/uploads z.Bsp. Durch diese Struktur haben wir auch die Möglichkeit einzelne Mandanten anzupassen wenn Sonderwünsche auftreten in dem wir z.Bsp. bevor wir die Datei: HST-meineapp/include/printer/report.php prüfen ob es eine HSt-muster-meineapp/include/printer/report.php gibt, und wenn ja soll diese eingebunden werden. Somit können wir eine komplette Dynamik realisieren für jeden Mandant in dem wir einfach nur eine Subdomain setzen und eine Zentrale dispatcher.php einladen. Nun würde ich gerne mal eure Meinungen zu diesem "Design" wissen damit ich meinen Ansatz verbessern kann. Meine idee war ursprünglich lediglich wie ich es realisieren kann dass man beim Login nur Benutzer + Kennwort braucht, ohnen noch eine Kundennummer eingeben zu müssen. Für mich sind damit folgende Punkte abgedeckt: 1. Patchen nur pro Server 1x notwendig. 2. Sicherung von Mandanten einzeln und unkompliziert möglich. 3. Restore Möglichkeit direkt ohne Software zu schreiben. 4. Mehrsprachigkeit kann zentral erweitert werden. 5. Benutzerdefinierte Dateien includen anstelle der DEFAULT System PHP-Datei 6. Login mit der gleichen E-Mail Adresse möglich bei verschiedenen Mandanten. Hoffe es ist verständlich, ansonsten bitte ich um Nachbohren Grüsse eXe |
| | |
| | |
| PHP Code Flüsterer Registriert seit: 21.08.2005 Beiträge: 4682 PHP-Kenntnisse: Fortgeschritten | |
| | |
| Moderator und Wett-König | Welche Ansätze hast du denn bisher? Das Software-Design-Forum ist eigentlich dazu gedacht, vorhandene Ansätze zu diskutieren und keine Architektur-Beratung from the scratch durchzuführen...
__________________ Viele Grüße, Dr.E. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1. Think about software design before you start to write code! 2. Discuss and review it together with experts! 3. Choose good tools (-> Adventure PHP Framework (APF))! 4. Write clean and reusable software only! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| | |
| | |
| moderatives Dielektrikum Registriert seit: 21.05.2008
Beiträge: 35.994
PHP-Kenntnisse: Fortgeschritten ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() | Die Betonung liegt auf „from the scratch“. In diesem Forum solltest Du ansatzweise gängige Prinzipien für solche Anwendungsfälle kennen, um sie in Bezug auf Deine spezifische Anwendung diskutieren zu können. „Wie macht man eigentlich“ gehört eigentlich in keines unserer Foren. http://www.php.de/php-einsteiger/675...sumfragen.html
__________________ -- One pixel is still too big. Please make it smaller. ASAP. Initiative Mittelstand. Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers. -- |
| | |
| | |
| Erfahrener Benutzer Registriert seit: 08.08.2009
Beiträge: 195
PHP-Kenntnisse: Fortgeschritten ![]() | Hallo nikosch Ich habe ja bereits mein "Software-Design" / "Architektur" beschrieben. Mir gehts nur darum von jemandem der schon etwas Erfahrung hat zu wissen ob es komplett verkehrt ist aus Gründen die sich mir noch nicht offenbart haben oder ob ich mal "go ahead" gehen kann und loslegen. Es ist keines Falls zu vergleichen mit einem Post |
| | |
| | |
| moderatives Dielektrikum Registriert seit: 21.05.2008
Beiträge: 35.994
PHP-Kenntnisse: Fortgeschritten ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() | Naja, Du redest aber hier von Datenbankstrukturen und Ordnernamen, die in der Konzeption überhaupt nichts verloren haben.
__________________ -- One pixel is still too big. Please make it smaller. ASAP. Initiative Mittelstand. Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers. -- |
| | |
| | |
| Erfahrener Benutzer Registriert seit: 08.08.2009
Beiträge: 195
PHP-Kenntnisse: Fortgeschritten ![]() | Wollte nur mein Konzept verständlich darstellen. Sollte nicht heissen, dass ich jetzt hier von jemandem erwarte wie ich das jetzt umsetzen muss. Aber wenn keiner was dazu beitragen kann, schliesst ihr den Thread eben. Grüsse & schönen Abend eXe |
| | |
|
| Themen-Optionen | |
| Thema bewerten | |
|
|
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| merkwürdige Idee - Dateiübergabe | JBJHJM | PHP Tipps 2010 | 7 | 17.06.2010 22:03 |
| Idee für Online Status andere Personen?? | magicdj | PHP Tipps 2010 | 9 | 12.03.2010 19:27 |
| Datenbank Design (Idee / Frage) | suche007 | Datenbanken | 1 | 30.07.2009 13:38 |
| Scriptsuche Community firndslist? wie speichern?? Idee? | PhilipKupsik | Scriptbörse | 6 | 19.05.2009 23:26 |
| dtaus-Modul bringt einen foreach-Fehler...Idee? | BartTheDevil89 | PHP Tipps 2009 | 3 | 01.01.2009 16:01 |
| Idee oder Mithilfe in Projekt gesucht | Shrek2oo6 | Beitragsarchiv | 2 | 26.12.2008 18:41 |
| Was hält ihr von der Idee...? | halskrause | Beitragsarchiv | 1 | 22.12.2008 16:42 |
| Idee für Sessionschutz eines Games... | BartTheDevil89 | PHP Tipps 2008 | 5 | 24.09.2007 00:14 |
| Terminplan...idee zu umständlich? | Aris Sung | PHP Tipps 2007 | 1 | 14.12.2005 17:40 |
| Erstmal nur eine Idee | blinkster.de | Beitragsarchiv | 2 | 04.12.2005 15:36 |
| Hat einer eine Idee (wg. Datumsauswahl im Formular) | PHP Tipps 2005 | 4 | 14.04.2005 17:02 | |
| [Browsergame]-Neue Idee | Beitragsarchiv | 17 | 10.03.2005 03:11 | |
| Idee gesucht | PHP Tipps 2004-2 | 4 | 09.12.2004 08:15 | |
| [Erledigt] Idee: Benchmark-Script schreiben um Webhoster zu vergleichen | PHP-Fortgeschrittene | 3 | 12.10.2004 18:27 | |
| Usermanagement: Idee? | PHP-Fortgeschrittene | 21 | 30.06.2004 15:55 | |
| Besucher kamen über folgende Suchanfragen bei Google auf diese Seite |
| mandantenfähigkeit datenbank, mandantenverwaltung software, mandantenverwaltung, datenbank mandantenfähig, was heisst mandantenfähig, idee für php programm, software mandantenfähig, was heißt mandantenfähig, software mandantenverwaltung, mandantenfähige software, mandantenfähig software, mandantenfähigkeit datenbank was heißt, mandantenfähige datenbankstruktur, php mandantenverwaltung, php mandantenfähig, mandantenfähiges application framework, was bedeutet mandantenfähig, php mandant, mandantenfähigkeit datenbank tabelle, mandantenfähiges system design |