Dropdownmenu aus datenbank füllen + speziell

ArcaDe

Mitglied
Hallo Ihr Lieben,

ich habe folgende Frage.
Zum Problem:
Ich möchte folgendes erreichen. Ich fülle ein Dropdown Menü oder auch Listbox genannt über meine MySQL DB. Das funktioniert auch ohne weiteres. Nun befinden sich in meiner ausgewählten Spalte auch doppelte Einträge welche ich natürlich auch erhalte (Es handelt sich um Berliner Bezirke). Diese möchte ich natürlich nur einmal im Dropdown Menü haben. Desweiteren möchte ich, wenn jemand einen Eintrag aus dem Dropdown startet eine Abfrage starten mit dem ausgewähltem Wert.

1. Problem = Doppelte Einträge entfernen.
2. Problem = Abfrage starten über Auswahl.

Hier der entsprechende Code:

PHP:
$abfrage = "SELECT `bezirk` FROM `meine_tabelle`

ORDER BY `bezirk` ASC";

$ergebnis = mysql_query($abfrage);

echo '<select size="1" name="bezirk_go">';

while($row = mysql_fetch_object($ergebnis))

    {

$id = "$row->id";
$bezirk = "$row->bezirk";

echo '<option value="'.$bezirk.$id.'">'.$bezirk.'</option><br>';
}

echo ' </select>';

Lieben Dank im vorraus.

Gruß
Marcus
 
Setze einfach in der Datenbankabfrage das Schlüsselwort DISTINCT ein, damit nur eindeutige Datensätze ausgewählt werden:
Code:
SELECT DISTINCT
        `bezirk`
  FROM
        `meine_tabelle`
  ORDER BY
        `bezirk` ASC
 
Hallo,
zu 1:
benutze in deiner Abfrage die DISTINCT() Funktion.

zu 2:
Wenn du willst, dass das Forumular beim Auswählen eines Eintrages gesendet
wird, dann musst du JavaScript verwenden.
So z.B.:
HTML:
<form method="POST" action="ziel.php" name="formular">
	<p>
		<select onchange="document.formular.submit();" size="1" name="listbox">
			<option value="ID1" selected="selected">Value1</option>
			<option value="ID2">Value2</option>
			<option value="ID3">Value3</option>
		</select>
		<input type="submit" value="Senden" name="senden">
	</p>
</form>

mfg
forsterm
 
Zuletzt bearbeitet:
WOW ihr seid Klasse .. Superdank an Euch beide ! Ich habe die Frage gerade gepostet schon 2 Superantworten .. Das ja schneller als jeder Messenger :)
Supi Problem 1 gelöst Ich bin nicht wirklich der JavaScript Junkie. Das einzige was ich da beherrsche sind die Rollovers :)

UPS. Da hast ja noch was rangehängt .. Muss ich mal analysieren ob ich das alles verbinden kann ... Vielen Dank.
Also durchlaufe ich meine Schleife bei z.Bsp. <option value="%Meine_dynamische_ID%">%MEIN_SQL_ERGEBNIS%</option>

und kann dann %Meine_dynamische_ID% im ziel.php weiterverarbeiten ?
Muss leider weg. Aber wenn dem so ist dann haben WIR es geschafft und nen grossen Strauß Blumen an Euch !
 
Zuletzt bearbeitet:
Hallo,
bei deinem Beispiel sollte das ungefähr so funktionieren:
Code:
<form method="POST" action="deinziel.php" name="namedesformulars">
<?php
    $abfrage = "SELECT `bezirk` FROM `meine_tabelle` ORDER BY `bezirk` ASC";
    $ergebnis = mysql_query($abfrage);
    
    echo '<select onchange="document.namedesformulars.submit();" size="1" name="bezirk_go">';
    
    while($row = mysql_fetch_object($ergebnis)){
        $id = $row->id;
        $bezirk = $row->bezirk;
        echo '<option value="'.$bezirk.$id.'">'.$bezirk.'</option><br>';
    }
    
    echo ' </select>';
?>
</form>

mfg
forsterm
 
GENAU das meinte ich. Immer noch begeistert. Gerade mal 20 Minuten !!
Vielen, vielen Dank !

ERLEDIGT dank Euch
Evt sollte man die Lösung hier als Sticky oder kleines Tut anbringen, damit die anderen das Problem auch nicht mehr haben.

Jetzt muss ich aber los .. Badewetter :) . Die Kinder werden sich freuen und ich noch viel mehr HAHA
 
Zuletzt bearbeitet:
Zurück