Hallo in die Runde,
ich verwende für ein Projekt das Script für verkettete Auswahllisten (3 Felder): http://aktuell.de.selfhtml.org/artikel/javascript/verkettete-auswahllisten/index.htm
Die Daten dafür lese ich aus einer MySQL-Datenbank ein. Und da liegt das Problem ... Da ich nicht 1000e von Abfragen senden möchte, lasse ich mir das Gesamtergebnis als ein assoziativen Array ausgeben, dass im Prinzip alle nötigen Angaben enthält. Nur müssen diese noch in die richtige Form gebracht werden. Kann mir dabei jemand helfen?
So lese ich die Daten aus der DB aus:
FirmaName FirmaID TypName TypID ProduktName ProkuktID
"xy GmbH" "40" "Typ1" "10" "A6X-45" "31"
"xy GmbH" "40" "Typ1" "10" "A4X-90" "75"
"xy GmbH" "40" "Typ2" "1" "A-100M" "2428"
"xy GmbH" "40" "Typ2" "1" "A-110ew" "939"
"xy GmbH" "40" "Typ3" "2" "X-1023" "437"
"xy GmbH" "40" "Typ3" "2" "X-10re" "385"
"xy GmbH" "40" "Typ3" "2" "A-127P" "3288"
Und in diese Form müssen sie:
var kombinationen = {
'Firma' : {
'40' : ['40', 'xy GmbH'],
'42' : ['42', 'xy GmbH und Co KG']
},
'Typ' : {
'40' : [
['40-10', 'Typ1'],
['40-1', 'Typ2'],
['40-2', 'Typ3']
],
'42' : [
['42-10', 'Typ1'],
['42-3', 'Typ4']
]
},
'Produkt' : {
'40-10' : [
['31', 'A6X-45'],
['75', 'A4X-90']
],
'40-1' : [
['2428', 'A-100M'],
['939', 'A-110ew']
]
}
};
Wie gehe ich dabei am besten vor?
Zunächst würde ich für die Firmen das Array um die Spalte 3-6 "kürzen" und dann mit array_unique Doppeleinträge herausfiltern. Aber wie lösche ich die Spalten? Mit array_slice kann ich ja nur horizontal löschen, ich bräuchte es vertikal ...
Falls jemand eine Komplettlösung hat, ist er/sie natürlich auch sehr willkommen!
Dank & Gruß,
luti