generelles Logikproblem
Hallo Forum,
ich habe mal ein grundsätzliches Logikproblem. Also: Wenn ich zB einen shop habe, habe ich verschiedene Gruppen: Blumentöpfe, Radios, PCs. Je nach Gruppe habe ich verschiedene Eckdaten: Beim Blumentopf: Volumen, Material, Farbe,Durchmesser, Form,usw. Beim PC: Speicher, CPU, LAN, HDD, usw Beim Radio: USB, Sendeplätze, Leistung, Freisprecheinrichtung, MP3,usw. Wie bekomme ich eine flexible Artikelverwaltung hin? Die erste Idee war eine lange Tabelle mit allen Beschreibungen und als Standartwert unwichtig. Als Auswahl dann alle Werte wo !=“unwichtig“ Allerdings wird die Tabelle dann sehr lang und unübersichtlich. Dann hatte ich die Idee das Ganze an einer Gruppe fest zu machen. Also wenn gruppe=1 nehme Tabelle pcs, wenn gruppe=2 nehme Tabelle blumentöpfe. Bei der Erfassung neuer Artikel dann via select als erstes die Gruppe wählen, die per javascript abschicken und dann die die Felder generieren. Ein weitere Ansatz war die Überschriften zu den Gruppen als String zusammen mit den tabellennamen in einer Tabelle ab zu speichern: 1 „cputakt,speicher,hdd,kartenleser,brenner“ pcs; 2 „aussendurchmesser,innendurchmesser,höhe,farbe“ blumentoepfe; 3 „sendeplätze,usb,mp3,leistung,freisprecheinrichtung“radios; Ein array generieren und darau ein Formular basteln. Bei allen Ansätzen scheitere ich an der fehlenden Dynamik beim speichern. Natürlich kann ich sagen if(klasse=1) insert into pcs... else if(klasse=2) insert into blumentoepfe... else if(klasse=3) insert into autoradios... Kommt dann eine Gruppe z.B. Lampen hinzu, müsste ich manuell eine weitere else if Anweisung einfügen. Gibt es dafür ein Patenrezept? Das Problem müsste doch eigendlich jeder Shopentwickler haben. Wie löse ich sowas sauber? Danke für eure Mühe Gruß tsunamitsunami |
AW: generelles Logikproblem
Zitat:
Alle benötigten Dateinamen ins Array und Klasse=1 entspricht dem Array-Index. |
AW: generelles Logikproblem
du hast eine tabelle kategorien
id | name 1 | blumentopf dann gibts für alle kategorien eine tabelle mit attributen id | kat_id | name | default_value | type 1 | 1 | | Volumen | 0 | numeric und dann noch eine tabelle mit werten id | a_id | article_id | value 1 | 1 | 1 | 25 und dann kann der admin eine neue artikel-kategorie anlegen, dafür die attribute definieren, für die artikel dann ne kategorie aussuchen und die passenden werte eintragen. |
AW: generelles Logikproblem
Hallo,
das ging ja schnell! Danke! :) @Feuervogel. So ähnlich war meine Idee2 ja auch. Das würde, wenn ichs richtig verstanden habe, heissen, nicht neuen Artikel hinzufügen, sondern Neuen PC hinzufügen, Neues Autoradio hinzufügen, Neuen Blumentopf hinzufügen usw., oder? @vt1816. Das klingt ähnlich wie meine 3. Idee. PHP-Code:
Unter Beschreibung steht dann ein fest definierter string? Sehr guter Ansatz... Aber auch dann müsste ich sagen Neuer PC, Neuer Topf, Neues Radio usw. statt Neuer Artikel, oder? bisher habe ich halt: id Artikelname guppe_id objektwert genauebeschreibung 1 Gamer PC 1 6000 19 2 Kaktustopf 2 23 19 Wenn gruppe_id=1 suche in Tabelle pc nach id 19. Wenn gruppe:id=2 suche in Tabelle blumentopf nach id 19. Geht so also wohl nicht und ich muss das Ganze unterteilen, oder bin ich auf dem Holzweg? |
AW: generelles Logikproblem
Liste der Anhänge anzeigen (Anzahl: 1)
Nochmal @feuervogel zum Verständnis:
Dann würde die Tabelle Werte doch in etwa so aussehen. Anhang... |
AW: generelles Logikproblem
Zitat:
|
AW: generelles Logikproblem
Danke für eure Hilfe! Ich denke damit werde ich weiterkommen.
|
AW: generelles Logikproblem
Hallo zusammen!
Wen es interessiert: Ich habe es nun teil-lösen können. Alerdings sehr unbefriedigend: -- Ausgabe aller Schuhe: PHP-Code:
Zitat:
Ich möchte erstmal eine Grobübersicht haben. Mehr später im Tooltipp. So funktioniert es. Nun habe ich aber ein Problem, wenn die Werte aus irgend einem Grund mal nicht in der selben Reihenfolge in der Spalte stehen... Und: Wie kann ich sowas sortieren/filtern? ZB nach Schuhersteller. Die Werte stehen ja in der Spalte Wert untereinander. Die sind über die Tabelle attribute verknüpft. Also Tabelle attribute: id|kathegorie_id|attributname 1|1|Größe 2|1|Hersteller 3|2|cpu Tabelle kathegorien: id|Name 1|PCs 2|Schuhe 3|Blumentöpfe Tabelle Werte: id|attribut_id|objekt_id|wert 1|1|1|Tower 2|2|1|HP 3|3|1|3.4 Soll heissen Kathegorie 1(PCs) Objekt1(also PC1) Attribute 1-3. In der gleichen Spalte stehen aber auch Farbe eines Blumentopfs oder Schuhgröße. zB 3(Blumentöpfe) Objekt3(also Topf3) Attribute 1-3. Ihr hattet mir ja schon geraten, das ganze in ein Array zu packen. Das war auch ein Ansatz. Den attribut-Namen als Schlüssel nehmen und die Objektwerte dahinterpacken. PHP-Code:
Der Array-Schlüssel muss eindeutig sein und in meinem Fall habe ich zB mehrere PCs in der Datenbank. Ich müsste also das Array füllen. Sortieren. Ausgeben. leeren. füllen. Sortieren... Eine Idee wäre noch mehrere Arrays zu erzeugen jeweils mit der Objektid als Anhängsel. Aber das ist doch Müll, oder? Vor allem, wenn da zB "nur" 100 PCs in der DB sind. -- Bin schon fast so weit, wieder zu den Wurzeln zurück zu gehen und einfach den Tabellennamen mit zu übergeben. PHP-Code:
Weil so scheint es nicht lösbar zu sein. Vor allem wenn ich zB noch filtern oder sortieren möchte. |
Alle Zeitangaben in WEZ +2. Es ist jetzt 22:23:38 Uhr. |
Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.