| | | | |
| |||||||
| Software-Design Diskussionen auf Profi-Niveau: PHP Lösungen auf konzeptioneller Ebene |
|
| | LinkBack | Themen-Optionen | Thema bewerten |
| | |
| PHP Code Flüsterer Registriert seit: 21.08.2005 Beiträge: 4682 PHP-Kenntnisse: Fortgeschritten | |
| | ||
| Erfahrener Benutzer Registriert seit: 28.09.2008
Beiträge: 1.168
PHP-Kenntnisse: Fortgeschritten ![]() | er will die Suche speichern - nicht das Ergebnis. Zitat:
dann wär das wohl kein Problem. Aber so wie ich das verstanden hab geht die Suche über mehrere Schritte. Vielleicht kann man die Suchoptionen in der Session speichern und dann in einer separaten DB-Tabelle "search_options", wobei jede Spalte eine option repräsentiert. Beim Abschluß der Suche ne Checkbox: "Suchoptionen speichern". | |
| | |
| | |||
| moderatives Dielektrikum Registriert seit: 21.05.2008
Beiträge: 35.994
PHP-Kenntnisse: Fortgeschritten ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() | Zitat:
Zitat:
Mal ein Beispiel, wie blöd sich Suchparameterkombinationen abbilden lassen: Code: id | suchId | fk_userId | datum | feldbezug | value | type 1 | 1 | 1 | ... | NULL | Büro | Stichwort 2 | 1 | 1 | ... | JB_Orte.Plz | 56 | RelationLike 3 | 2 | 1 | ... | JB_Branchen.ID | 1544 | Relation 3 | 2 | 1 | ... | JB_Branchen.ID | 1546 | Relation 4 | 2 | 1 | ... | JB_Branchen.ID | 1547 | Relation 5 | 1 | 23 | ... | NULL | Hotel | Stichwort 6 | 1 | 23 | ... | NULL | Gaststätte | Stichwort Es gibt - Stichwortsuchen über Felder mehrerer Tabellen - Problem: Welche Felder das sind, muß fest verdrahtet sein. Wenn ich das auch noch linear oben abbilden wollte, müßte ich nämlich wiederum die Art der Verknüpfung mit abbilden können. Zur Zeit sind alles AND Vk. - Relationen direkt auf Ids - Teilsuchen wie oben Postleitzahlteil. Vom DB seitigen Nutzen dieser Daten ganz zu schweigen. Aus obigem Schema müßte man die Daten wahrscheinlich pro User bei der Anmeldung auslesen und Sessionseitig ablegen, um das einigermasse handlebar zu machen.
__________________ -- One pixel is still too big. Please make it smaller. ASAP. Initiative Mittelstand. Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers. -- Geändert von nikosch (24.04.2009 um 13:48 Uhr). | ||
| | |
| | ||
| Erfahrener Benutzer Registriert seit: 16.07.2005
Beiträge: 1.007
PHP-Kenntnisse: Fortgeschritten ![]() | Zitat:
| |
| | |
| | |
| moderatives Dielektrikum Registriert seit: 21.05.2008
Beiträge: 35.994
PHP-Kenntnisse: Fortgeschritten ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() | Naja, da gibts nicht viel. Das Projekt ist schon 'was älter. Nen zusätzlichen DB-Abstraktions-Layer einzuziehen sieht das Projektbudget mit Sicherheit nicht vor.
__________________ -- 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: 28.09.2008
Beiträge: 1.168
PHP-Kenntnisse: Fortgeschritten ![]() | Zitat:
Code: id | suchId | fk_userId | datum | JB_Orte.Plz | JB_Branchen.ID | ... 1 | 1 | 1 | ... | AND, Büro | OR, 59134 | ... | |
| | |
| | ||
| moderatives Dielektrikum Registriert seit: 21.05.2008
Beiträge: 35.994
PHP-Kenntnisse: Fortgeschritten ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() | Naja, etwas dynamischer darf es dann doch sein. Jeden möglichen Suchparameter als Feld abzubilden halte ich für die schlechteste Variante. Zumal ja auch BrancheID 0815 oder BrancheID 0816 ... in einer Suche vorkommen dürfen sollen. Auch die Operatoren machen nicht wirklich Sinn, weil ohne Klammerung schlicht die Operatorreihenfolge entscheidend wäre. Um mehrere Zeilen pro Suche wird man mit einem halbwegs atomaren Ansatz wohl nicht herumkommen. Zitat:
__________________ -- One pixel is still too big. Please make it smaller. ASAP. Initiative Mittelstand. Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers. -- | |
| | |
| | |
| Moderator Registriert seit: 11.05.2008
Beiträge: 6.269
![]() ![]() ![]() ![]() ![]() ![]() ![]() | Lass die Suche doch über ein Suchanfrage-Objekt starten. Das kannst du serialisiert in/aus der DB speichern/laden oder eben Schritt-für-Schritt in einem Suchformular über die Session oder POST zusammenbauen. Wenn ich mal weiter ausholen darf: Ich benutze für die Ausgabe von Datensätze immer einen Manager (Datenbank-Zugreifer), ein RecordSet (hier nur einen array mit Record-Objekten) und Records (Datencontainer). Aufruf etwa: PHP-Code: Code: array(
array("paging", array(1)),
array("order", array(array("created", false), ..)),
..
)
JobManager könnte grob so aussehen (wenn du Zend_Db mal verwenden magst): (benutzt du eigentlich ein Framework nikosch?) PHP-Code:
__________________ "Nuschel ich?" - "Was?" |
| | |
|
| Themen-Optionen | |
| Thema bewerten | |
|
|
| Besucher kamen über folgende Suchanfragen bei Google auf diese Seite |
| persistente speicherung, php suchparameter, suchparameter in datenbank speichern, zend_db relationship tutorial, suchparameter google, php serialisiertes objekt in db speichern, suchformular speichern php, php suche filter speichern, history speichern persistent, vorteile persistente speicherung, filter in datenbank ablegen, speichern von persistenten objekte php, suchparameter als übersicht speichern, access, ajax suchparameter speichern, liste von möglichen suchparameter, \persistente speicherung \, xml struktur in db speichern, php filter speichern, serialisierte objekte in datenbank speichern, speieren |