php.de

Zurück   php.de > Webentwicklung > Software-Design

Software-Design Diskussionen auf Profi-Niveau: PHP Lösungen auf konzeptioneller Ebene

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 10.09.2011, 18:01  
Benutzer
 
Registriert seit: 29.05.2011
Beiträge: 58
PHP-Kenntnisse:
Anfänger
axelf befindet sich auf einem aufstrebenden Ast
Standard

Hi,

es soll für jeden Anbieter einen eigenen Filter geben, da ja jeder Anbieter andere Tarife hat. Mittels des Filters soll der User dann Tarife dieses Anbieters angezeigt bekommen. Das Ergebniss richtet sich dann natürlich nach der Auswahl des Users.

Die Daten liegen alle in einer Datenbank und je nachdem welche Checkbox(en) angehakt ist / sind wird dann die Abfrage zusammengebaut. Das ist auch alles kein Problem, es geht mir nur um eine ordentliche Struktur des ganzen, da sich bei Tarifen ja sehr schnell mal Änderungen ergeben und der Filter an verschiedenen Stellen ensetzbar sein soll.
axelf ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 10.09.2011, 18:17  
Erfahrener Benutzer
 
Registriert seit: 04.07.2003
Beiträge: 359
PHP-Kenntnisse:
Fortgeschritten
Sirke befindet sich auf einem aufstrebenden Ast
Standard

Wenn es sich wirklich nur um TRUE oder FALSE Filter handelt, dann kann man ja auch einen einzigen Filter haben, den man zur Laufzeit generiert und muss nicht viele verschiedene Klassen für die verschiedenen Anbieter haben.

Ich würde mir alle Filterkriterien die es zu einem Anbieter gibt aus der DB holen und dann den Filter zusammenstellen. Diesen Filter kann man dann zur Not auch cachen um die eine Datenbankabfrage zu vermeiden.
Ich halte es aber für unhandlich für jeden Anbieter einen eigenen Filter zu erstellen, da jede Änderung an Tarifnamen, Anbieternamen oder auch neue Tarife und Anbieter immer einen großen Aufwand am Quellcode zur Folge haben, aber im Endeffekt nur Veränderungen des Inhaltes sind.

Das ganze würde dann so ablaufen: Der Benutzer wählt einen Anbieter den er filtern will. Im Script wird nun die Liste aller Tarife des Anbieters geladen und damit auch die Liste aler möglichen Filterkriterien. Diese Filterkriterien werden zu einem Filter hinzugefügt und dieser dann dargestellt. Der Benutzer wählt die Checkboxen des Filters aus und nach dem Absenden des Formulars wird dieses an den Filter übergeben und von diesem ausgewertet. Anschließend kann der Filter an den Adapter für die Datenbankabfrage übergeben werden und die richtigen Daten ausgegeben werden.

Nur eine Idee von mir und mein Ansatz wie ich ein solches Problem lösen würden. Im Endeffekt denke ich ist das ähnlich wie eine Konfigurationsdatei, aber da die Daten ja bereits in der Datenbank vorhanden sind, kann man diese auch von dort beziehen...
Sirke ist offline   Mit Zitat antworten
Alt 12.09.2011, 17:14  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.994
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Zitat:
Zitat von axelf Beitrag anzeigen
Daher habe ich die Struktur auch erstmal so angelegt:

PHP-Code:
class Filter{}

// Funktionalitäten, die nur von 2 oder 3 Anbietern benötigt werden
class Filter_Speziell extends Filter{}

class 
Filter_Anbieter1 extends Filter_Speziell{}
class 
Filter_Anbieter2 extends Filter{} 
Es wurde ja auch schon eimmal geschrieben, das es anbieterunabhängig gelöst werden kann, aber da habe ich noch keine richtige Vorstellung, wie man sowas umsetzen kann, da ja für jeden Anbieter ein unterschiedlicher Filter benötigt wird.
halte ich auch für Unsinn. Viel mehr würde ich umsetzen

- Basisobjekt für Filter
- konkrete Implementierung für Filter
- Queue-Objekt für meherere Filter (http://de.wikipedia.org/wiki/Komposi...wurfsmuster%29)

Die Gruppierung gemeinsamer Filterkriterien betrifft dann eigentlich nur die Zusammenstellung der Queue. Bspw. über eine Factory.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine 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
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Spezialisten für den Aufbau eines WEB Experten Team gesucht WET Gewerblich 0 24.05.2011 13:26
[Erledigt] Seite erst nach Aufbau anzeigen marcial PHP Tipps 2010 15 09.09.2010 00:58
Grundsätzlicher Aufbau einer Seite Nabla PHP Tipps 2010 5 24.01.2010 20:06
großes Projekt - objektorientierter Aufbau cattweasel PHP-Fortgeschrittene 13 03.11.2009 01:36
[Erledigt] Mehrere Tabellen mit gleichen Aufbau zu einer? rs_2009 Datenbanken 7 19.10.2009 23:47
dynamischer array aufbau babyNeo PHP Tipps 2009 7 01.10.2009 00:58
Aufbau der Syntax bashi PHP Tipps 2009 4 02.01.2009 22:51
[Erledigt] Eure Meinung zu Menü, Aufbau, und Design HTML, Usability und Barrierefreiheit 10 26.10.2005 13:55
Aufbau einer Mailroutine nussbaum PHP Tipps 2005-2 4 07.09.2005 13:15
aufbau einer Seite HTML, Usability und Barrierefreiheit 13 17.03.2005 18:35
Modularer Aufbau von cms! PHP-Fortgeschrittene 2 26.01.2005 16:54
Aufbau der Seiten - Verbesserungsvorschläge? PHP Tipps 2004-2 0 09.12.2004 20:09

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php filterkriterien

Alle Zeitangaben in WEZ +2. Es ist jetzt 01:39 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum