[Thread Prev][Thread Next]   >Date Index >Thread Index

Re: Braeuchte mal Eure Perl-Hilfe!

Stephen Riehm - Thu Dec 05 10:45:00 2002

Hi Johannes,

na dann... ich habe EINE Loesung... vielleicht hat jemand anders Tips um es "besser" zu machen, wobei ich auf Structure und Lesbarkeit geachtet habe und nicht unbedingt Geschwindigkeit oder Speicherbedarf.

Viel Glueck,

Steve

Attachment: convert.pl
Description: application/text



On Dienstag, Dezember 3, 2002, at 09:05  Uhr, Johannes Gamperl wrote:


Hallo Ihr!

Ich hoffe Euch gehts gut und der Weihnachtsurlaub rückt näher ;o)
Heute habe ich mal ein Problem mit ner Programmieraufgabe .. ich check
grad nix .. gibts wohl auch mal *g*.

Situation:

Ich habe eine Datenbanktabelle mit der folgenden Strucktur:

 id | titel | irgendwas | irgendwas

Hier mal ein kurzer Dump:

 VALUES (1, 'Auto & Motorrad:Automobile:Alfa Romeo', 0, 0);
 VALUES (2, 'Auto & Motorrad:Automobile:Audi', 0, 1);
 VALUES (3, 'Auto & Motorrad:Automobile:BMW', 0, 1);
 VALUES (4, 'Computer & Computerspiele:Spiele', 0, 1);
 VALUES (5, 'Computer & Computerspiele:Spiele:Test1', 0, 1);
 VALUES (6, 'Computer & Computerspiele:Spiele:Test2', 0, 1);
 VALUES (7, 'Computer & Computerspiele:Spiele:Test2:usw.', 0, 1);


Über den Titel dieser Einträge muss ich ein Abfrage für ein
JavaScript-Menü erzeugen. Die Kategorien, bzw. Subkategorien sind von
der Logik mit einem Doppelpunkt (:) voneinander getrennt. Also obiges
Beispiel würde den folgenden Tree ergeben:

+- Auto & Motorrad
  |- Alfa Romeo
  |- Audi
  |- BMW
+- Computer & Computerspiele
  |- Spiele
     |- Test1
     |- Test2
        |-- usw.


Den Inhalt muß ich nun in ein JavaScript-Objekt jagen und zwar anhand
der folgenden Logik im JavaScript:

Tree.setTreeItems("[id]|[parentid]|[titel]");

Demnach müßte das oben gezeigte Beispiel wie folgt ausgegeben werden:

Tree.setTreeItems("1|0|Auto & Motorrad");
Tree.setTreeItems("2|1|Alfa Romeo");
Tree.setTreeItems("3|1|Audi");
Tree.setTreeItems("4|1|BMW");
Tree.setTreeItems("5|0|Computer & Computerspiele");
Tree.setTreeItems("6|5|Spiele");
Tree.setTreeItems("7|6|Test1");
Tree.setTreeItems("8|6|Test2");
Tree.setTreeItems("9|8|usw.");

Nun check ich aber grad überhaupt nicht so recht, wie ich die
Datenbankabfrage und die Perlroutinen am geschicktesten schreiben muss,
um zu so einem Ergebnis zu gelangen. Dummerweise muss ich das Teil bis
Freitag fertig haben .. ;(

Könnte Ihr mich dabei evtl. unterstützen .. in Perl seit Ihr doch alle
Megafit ;o)

Tausend Dank schon mal!

Viele Grüße
Hannes



Steve

Next: