Drop-Down-Feld ordnen: wie würdet IHR das lösen?

CarpeNoctem

Grünschnabel
Hallo Leute

Für unsere Alumni-Page bin ich im Moment mit der Suchmaske beschäftigt, also jener Seite, auf der man mit verschiedenen Kriterien nach Leuten suchen kann. Jetzt ist es so, dass wir alle diverse Einsätze hatten und das man diese auch angeben kann.

Jeder Member kann also definiere, in welcher Abteilung er bereits einen Einsatz hatte. Das funktioniert so, dass eine Tabelle "einsatzorte" und eine Tabelle "community" vorhanden ist. Bei der ersten Tabelle werden sämtliche möglichen Einsatzorte aufgelistet, welche danach einem Drop-Down-Feld übergeben werden. Nun wählt der Member seinen Einsatz aus und das Script übernimmt die Einsatzort-ID in die Tabelle Community. So weit so gut.

Da jede Abteilung noch einem Geschäftsbereich angehört, möchte ich das Ganze einbisschen sortieren, also z.B. den Devisenhandel, Optionsgeschäft, etc.. gehört alles zum Geschäftsbereich Investment Bank. Also soll im Drop-Down-Feld unter der Rubrik IB die genannten Abteilungen aufgelistet werden.

Ich hätte das so gemacht, dass die Hauptrubrik eine 1000er-Zahl zugeordnet bekommt, z.B. 2000, die Unterkategorie wäre dann 2100 und die Unterunterkategorie 2110. Dann könnte ich nämlich nach den Zahlen sortieren und auch so im Drop-Down-Feld ausgeben. Jetzt aber zum Problem: Wenn nun jemand nicht speziell eine Abteilung (z.B. 2100) sondern nach allen Abteilungen in einer speziellen Rubrik (z.B. 2000) suchen möchten, stehe ich vor dem Problem, dass ich beim WHERE nicht einfach "2000" drin haben kann, weil sonst ja die Unterkategorien nicht berücksichtigt werden.

Habt ihr eine Idee, wie ich das am schlausten löse?

Danke jetzt schon für eure Antworten.
 
Du drückst dich sehr kompliziert aus. Ich bin sehr verwirrt, wenn ich lese was du willst.

Kannst du das ganze nicht mit Code etwas unterstützen?

ansonsten kann ich dir leider nicht helfen, aber vielleicht wer anders.
 
Investment Bank -> 2000
FX-Trading -> 2100
Equity-Trading -> 2200
etc...

jetzt möchte ich, dass bei der Suche nach IB sämtliche Member angezeigt werden, die in der 2000er-Reihe drin sind, also FX-Trader wie auch Equity-Trader sollen selektiert werden..

nach wie vor unklar?
 
PHP:
SELECT * FROM table WHERE kind='2*'

oder so ähnlich. Da gibt es eine Mysql Funktion so weit ich weiß, die das kann. Müsstest mal im Mysql Handbuch schauen ;)
 
SELECT * FROM table WHERE kind LIKE '2%' ORDER BY kind ASC(oder DESC)

währe glaub ich das was du genau suchts..

Somit sucht der alle Datensätze, die in der spalte "kind" sind und mit 2 anfangen...

Wenn du eine Abteilung tiefer schauen willst halt kind LIKE "21%"...
 
Was spricht gegen ein weiteres Feld in der Datenbank, in dem du eine Kategorie definierst?

Investment Bank -> 1
FX-Trading -> 2
Equity-Trading -> 3

Im Zeitalter der Petabytes ist ein solches zusätzliches Feld kaum der Rede wert ;)
 
Hoffe ich versteh dich richtig..
PHP:
$suchoption = htmlspecialchars($_GET['variable'])."%"; //Variable = dein Input Formular etc.. 
$sql_query_string = "SELECT * FROM deiner Tabelle WHERE deineSpalte LIKE '".$suchoption."'";

Mfg Spikaner
 
Zurück