php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Scripts > BRAINSTORMING PHP/SQL/HTML/JS/CSS
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


BRAINSTORMING PHP/SQL/HTML/JS/CSS Ihr habt eine Idee, aber keinen genauen Ansatz? Diskutiert mit anderen Usern des Forums über eure Gedankengänge um evtl. hilfreiche Ideen zu bekommen!
Normale Fragen bitte weiterhin in die entsprechenden Foren!

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 15-05-2008, 13:36
DAI_BA
 Newbie
Links : Onlinestatus : DAI_BA ist offline
Registriert seit: May 2008
Beiträge: 4
DAI_BA ist zur Zeit noch ein unbeschriebenes Blatt
Question Webbasierte Datenbankanwendung mit php, MySQL, XML, XSLT, (X)HTML und CSS

Hallo,

ich entwickle gerade ein Konzept für die Entwicklung einer webbasierten Datenbankanwendung. Ziel ist das Erstellen einer GUI, die per Browser abrufbar ist und für die Abfrage, Pflege und Eingabe von Daten dient.

Das vorhandene Datenbank-Modell besteht aus etwa 70 Tabellen, die gemeinsam etwa 2500 Spalten/Attribute besitzen. Da diese Datenbankstruktur als Grundlage für verschiedene Projekte dienen soll, die selten jeweils alle Tabellen der Datenbank benötigen, möchte ich die Anwendung modular aufbauen, um nur benötigte Module für die jeweiligen Projekte „freizugeben“.

Dieses Konzept möchte ich bis auf die Feldebene herunterbrechen, damit folgendes fiktives Szenario denkbar wäre:
Projekt A und B benötigen das Modul „Kundenkartei“. Jedoch benötigt nur Projekt B das Feld „Ansprechpartner“, andererseits benötigt nur Projekt A das Modul „Einkauf“.

An dieser Stelle würde ich beispielsweise über eine XML-Datei die Projekte konfigurieren, wobei in den einzelnen „Projektzweigen“ der XML-Datei die verwendeten Module mit den jeweils benötigten Feldern vermerkt sind. Allerdings bin ich mir über die effektive Realisierung der Eingabemasken noch nicht ganz klar.

Für die Ausgabe dachte ich an folgende Variante:
Die ausgelesenen / abgefragten Datensätze könnten in XML-Strukturen gespeichert werden, um dann mittels XSLT in (X)HTML-Code gewandelt zu werden, welcher dann per CSS ein Layout erhält. Durch Nutzung von XML würde sich an dieser Stelle vermutlich der Aufwand zur Implementierung geforderter Exportfunktionen (z.B. pdf) deutlich minimieren.

EDIT:
Die gesamte Anwendung soll (derzeit) MySQL als Datenbank nutzen - welche Möglichkeiten gibt es, die Anbindung so flexibel zu gestalten, daß auch ein (späterer) Wechsel zu einer anderen Datenbank (z.B. PostgreSQL) möglich wäre?
/EDIT

Für die gesamte Anwendung soll natürlich MVC als Architekturmuster zum Einsatz kommen, da davon auszugehen ist, daß die Anwendung langjährig im Einsatz sein wird und laufenden Anpassungen unterliegen wird, die möglichst leicht einpflegbar sein sollten.

Was haltet ihr von diesem Konzept? Ist diese Vorgehensweise „state-of-the-art“ und „zukunftssicher“ oder ist es in diesem Anwendungsfall ein völlig falsches Vorgehen? Für Anregungen, Hinweise und Feedback – insbesondere hinsichtlich der Dateneingabe - bin ich sehr dankbar.

Vielen Dank und viele Grüße

Geändert von DAI_BA (15-05-2008 um 13:53 Uhr)
Mit Zitat antworten
  #2 (permalink)  
Alt 17-05-2008, 20:50
tontechniker
 PHP Senior
Links : Onlinestatus : tontechniker ist offline
Registriert seit: Jul 2005
Beiträge: 1.972
tontechniker ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Wichtig ist von Anfang an darauf zu achten, das die Module miteinander agieren können und nicht zu stark von einander abhängig sind.
Zitat:
Die gesamte Anwendung soll (derzeit) MySQL als Datenbank nutzen - welche Möglichkeiten gibt es, die Anbindung so flexibel zu gestalten, daß auch ein (späterer) Wechsel zu einer anderen Datenbank (z.B. PostgreSQL) möglich wäre?
Zum einen musst du darauf achten, das die Queries in allen Treibern funktionieren die du unterstützten möchtest (wenn du MVC nutzen möchtest solltest du dich über Active Records informieren, da kannst du dann eine Menge Arbeit sparen), zum anderen solltest du von Anfang an mehrere Datenbanktreiber unterstützen.
__________________
Die Regeln | rtfm | register_globals | strings | SQL-Injections | []
Mit Zitat antworten
  #3 (permalink)  
Alt 21-05-2008, 12:24
Quetschi
 PHP Expert
Links : Onlinestatus : Quetschi ist offline
Registriert seit: Dec 2004
Beiträge: 3.134
Quetschi wird schon bald berühmt werden
Standard Re: Webbasierte Datenbankanwendung mit php, MySQL, XML, XSLT, (X)HTML und CSS

Zitat:
Original geschrieben von DAI_BA

An dieser Stelle würde ich beispielsweise über eine XML-Datei die Projekte konfigurieren, wobei in den einzelnen „Projektzweigen“ der XML-Datei die verwendeten Module mit den jeweils benötigten Feldern vermerkt sind. Allerdings bin ich mir über die effektive Realisierung der Eingabemasken noch nicht ganz klar.
Ich habe mir für solche Sachen eine Formular-Klasse geschrieben - die Konfiguration erfolgt über die Tabellen 'Form', 'FormFieldsets', 'FormFields' und 'FormFieldChecks'. Man kann in Form dann eben grundsätzliche Eigenschaften des Formulars festlegen (action, id, enctype, usw.), FormFieldsets definiert dann eben Feldgruppen mit evtl. Überschriften, Beschreibungen usw. und in FormFields werden dann zu den Feldgruppen halt die Inputs (typ, label-Bezeichnungen, Default-Values usw.) festgelegt und ggf. eine CheckID eingetragen, die auf die FormFieldChecks-Tabelle verweist wo z.B. RegEx oder mustFilled usw. und passende Fehlerbeschreibungen abgespeichert werden.

Schlägt eine oder mehrere der Prüfungen fehl, wird das Formular natürlich mit den eingebenen Werten wieder dargestellt, oben drüber kommt dann ein per CSS schön rot hervorgehobener Kasten mit den Fehlerbeschreibungen und zusätzlich werden auch die Label-Bezeichnungen und Inputs entsprechend per CSS auffällig markiert.

Ist alles OK geschieht eigentlich in dieser Klasse nichts mehr weiter - was mit den _POST/_GET Daten weiter geschieht entscheidet sich dann in anderen Klassen, die die Daten z.B. eben in ne DB schreiben, per Mail versenden oder sonst was.

Zitat:
Original geschrieben von DAI_BA
Für die Ausgabe dachte ich an folgende Variante:
Die ausgelesenen / abgefragten Datensätze könnten in XML-Strukturen gespeichert werden, um dann mittels XSLT in (X)HTML-Code gewandelt zu werden, welcher dann per CSS ein Layout erhält. Durch Nutzung von XML würde sich an dieser Stelle vermutlich der Aufwand zur Implementierung geforderter Exportfunktionen (z.B. pdf) deutlich minimieren.
Ich arbeite nun fast ca. 2 Jahre eigentlich nur noch so und im Moment fällt mir nichts praktikableres und anpassungsfähigeres nicht ein. Auch die Formular-Klasse basiert letztenendes darauf, dass aufgrund der Konfiguration ein Xml erstellt wird das zum Schluss per Xslt ins gewünschten html geformt wird.
Mit Zitat antworten
  #4 (permalink)  
Alt 21-05-2008, 12:32
Quetschi
 PHP Expert
Links : Onlinestatus : Quetschi ist offline
Registriert seit: Dec 2004
Beiträge: 3.134
Quetschi wird schon bald berühmt werden
Standard

Zitat:
Original geschrieben von tontechniker
Wichtig ist von Anfang an darauf zu achten, das die Module miteinander agieren können und nicht zu stark von einander abhängig sind.
Jau - leider eine Schwäche von mir .
Muss manchmal doch feststellen das mir gewissen Abhängigkeiten der Klassen untereinander entstehen, die es dann eben erfordern die Abhängigkeiten zu beseitigen oder bestimmte Funktionen neu aufzusetzen.

Hab halt eben rein prozedural angefangen und das kriegt man irgendwie in meinem Alter wohl nicht mehr vollständig weg - so wie mir jedes Frühjahr auch auf dem Rennrad erst wieder angewöhnen muss schön rund zu treten
Mit Zitat antworten
  #5 (permalink)  
Alt 23-05-2008, 12:58
DAI_BA
 Newbie
Links : Onlinestatus : DAI_BA ist offline
Registriert seit: May 2008
Beiträge: 4
DAI_BA ist zur Zeit noch ein unbeschriebenes Blatt
Post

Hallo,

zunächst vielen Dank für die Antworten. Als Anfänger finde ich es sehr angenehm und gibt es mir Sicherheit, wenn erfahrene Spezialisten Feedback geben.
Leider ist mir die Funktionsweise Deiner Formularklasse noch nicht ganz klar. Einerseits würde ich gern wissen, ob die Klassen letztlich XML ausgeben, um dann per XSLT in XHTML transformiert zu werden und andererseits frage ich mich, wie Du die Konfiguration realisierst. Du sprichst von meheren Tabellen - definierst Du also Module und Felder in einer Datenbank statt einer XML-Konfigurationsdatei? Der Vorteil liegt hier sicher z.B. in der Redundanzfreiheit, sobald ein Feld in verschiedenen Formularen auftritt.

Viele Grüße und ein schönes Wochenende
Mit Zitat antworten
  #6 (permalink)  
Alt 23-05-2008, 13:14
Quetschi
 PHP Expert
Links : Onlinestatus : Quetschi ist offline
Registriert seit: Dec 2004
Beiträge: 3.134
Quetschi wird schon bald berühmt werden
Standard

Zitat:
Original geschrieben von DAI_BA
...wenn erfahrene Spezialisten Feedback geben.
erfahrener Spezialist? Ich? Na, ned wirklich...

Zitat:
Original geschrieben von DAI_BA
Leider ist mir die Funktionsweise Deiner Formularklasse noch nicht ganz klar. Einerseits würde ich gern wissen, ob die Klassen letztlich XML ausgeben, um dann per XSLT in XHTML transformiert zu werden und andererseits frage ich mich, wie Du die Konfiguration realisierst. Du sprichst von meheren Tabellen - definierst Du also Module und Felder in einer Datenbank statt einer XML-Konfigurationsdatei? Der Vorteil liegt hier sicher z.B. in der Redundanzfreiheit, sobald ein Feld in verschiedenen Formularen auftritt.
Jup - kommt ein Xml raus, das dann transformiert wird - hat halt den Vorteil, dass man z.B.
<label for="Name">Name</label><input type="text" name="Name" id="Name" />
oder
<input type="text" name="Name" id="Name" /> <label for="Name">Name</label>
transformieren lassen kann oder für Feldgruppenüberschriften halt zwischen h1, h2 usw. durchs xsl wählen kann.

Ja, hab mich hier damals für DB-Tabellen-Config entschieden, was aber ned sein müsste - ich glaub ich würde heute auch ne Xml-Config vorziehen. Die Redundanzfreiheit hab ich bei meiner Lösung übrigens übersehen und war bisher zu Faul das noch zu normalisieren (soviel nochmal zum Thema erfahrener Spezialist)
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

ebiz-trader 6.0 - Das professionelle PHP Marktplatz Script ansehen ebiz-trader 6.0 - Das professionelle PHP Marktplatz Script

Mit unserer Lösungen können Sie nahezu jeden B2B / B2C Marktplatz betreiben den Sie sich vorstellen können. Ganz egal ob Sie einen Automarktplatz, Immobilenportal oder einfach einen Anzeigenmarkt betreiben möchten. Mit ebiz-trader können Sie Ihre Anforder

11.10.2018 Berni | Kategorie: PHP/ Anzeigenmarkt
PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 23:20 Uhr.