ERLEDIGT
NEIN
NEIN
ANTWORTEN
2
2
ZUGRIFFE
381
381
EMPFEHLEN
-
Ich denk mir mir seit Stunden Ecken in meinen Kopf, weil ich keine Lösung finde und hoffe ihr könnt mir weiterhelfen.
Ich will ein verschachteltes HTML-Select-Feld aus einer MySQL-DB erstellen. In etwa so …
Kunden und Aufgabe stehen in zwei Tabellen. Also habe ich per JOIN alles zusammen ausgelesen. Dann habe ich jedoch nur ein Array mit allen Kunden und allen Aufgaben. Dann habe ich mit GROUP BY versucht das ganze zu "gruppieren". Aber ich glaube dafür ist das Group by nicht gedacht.HTML-Code:<select name="Aufgaben"> <optgroup label="Kunde 1"> <option label="Aufgabe 1">Aufgabe 1</option> <option label="Aufgabe 2">Aufgabe 2</option> <option label="Aufgabe 3">Aufgabe 3</option> <option label="Aufgabe 4">Aufgabe 4</option> </optgroup> <optgroup label="Kunde 2"> <option label="Aufgabe 1">Aufgabe 1</option> <option label="Aufgabe 2">Aufgabe 2</option> <option label="Aufgabe 3">Aufgabe 3</option> <option label="Aufgabe 4">Aufgabe 4</option> </optgroup> <optgroup label="Kunde 3"> <option label="Aufgabe 1">Aufgabe 1</option> <option label="Aufgabe 2">Aufgabe 2</option> <option label="Aufgabe 3">Aufgabe 3</option> <option label="Aufgabe 4">Aufgabe 4</option> </optgroup> </select>
Code :1 2 3 4 5 6 7 8 9 10 11 12 13
SELECT c.id AS customer_id, c.name AS customer_name, t.id AS task_id, t.title AS task_title FROM customers AS c LEFT JOIN task AS t ON t.customer_id = c.id
Ich denke man könnte jeden Kunden auslesen und dann in einem Sub-Query alle dazugehörigen Aufgaben auslesen. Aber das klingt irgendwie schon recht "langsam".
Kann ich mit einem Query die DB so auslesen, dass ich mein HTML-Select-Feld aufbauen kann? Ich muss also alle Aufgaben den Kunden unterordnen können.
Hoffe ihr versteht was ich meine
Grüße
- suntrop
-
Bei MySQL bleibt dir hier meines wissens nur ein ORDER BY kategorie, und dann muss deine applikation prüfen ob sich die kategorie im vergleich zum letzten datensatz geändert hat.
-
Ich habe es mit einer foreach-Schleife und einem wilden Array-Konstrukt hinbekommen

So schauts aktuell aus und funktioniert, wie ich es brauche.
Dennoch Danke für deine Hilfe!PHP-Code:$this->db->select( 'p.id AS project_id, p.title AS project_title, c.name AS customer_name' );
$this->db->from( 'projects AS p' );
$this->db->join( 'customers AS c', 'p.customer_id = c.id', 'left' );
$this->db->order_by( "c.name" );
$query = $this->db->get();
if ( $query->num_rows() > 0 )
{
$projects = $query->result_array();
}
foreach ($projects as $row) {
$p[$row['customer_name']][$row['project_id']] = $row['project_title'];
}
Ähnliche Themen
-
MYSQL- 2 tabellen mit einem select auslesen
Von grünes-huhn im Forum Relationale DatenbanksystemeAntworten: 6Letzter Beitrag: 06.11.08, 14:19 -
Daten aus MySQL über Select Feld auslesen!
Von maxiw im Forum PHPAntworten: 2Letzter Beitrag: 17.09.07, 17:14 -
Ein Feld aus mehreren Tabellen auslesen (MySQL/PHP)
Von suckMD im Forum Relationale DatenbanksystemeAntworten: 2Letzter Beitrag: 10.10.05, 15:24 -
mysql: Select über zwei Tabellen
Von coyu im Forum Relationale DatenbanksystemeAntworten: 13Letzter Beitrag: 28.02.05, 10:37 -
Auslesen und verbinden von zwei MySQl Tabellen bei einer Suchanfrage
Von Tarion im Forum Relationale DatenbanksystemeAntworten: 2Letzter Beitrag: 22.10.01, 14:43





Zitieren
Login





