Dropdown zu Dropdown

B

Benny86

Hallo ich bin ein völliger anfänger im bereich der PHP Programmierung und hoffe auf eure Hilfe.

Follgendes Problem:

Eine Seite mit 2 Dropdown Menüs:

Das erste Menü bekommt die Daten (DB Name einer MySQL Datenbank) als array. Also Auswahl DB Name.

Das zweite Menü bekommt den DB Namen der oben im Dropdown ausgewählt wurde, und soll alle Tabellen die sich in der DB befinden als auswahl bieten und diese bei auswahl wieder in ein array ablegen.

Ich versuche schon seit tagen was zu realisieren bzw. zu finden...

Hat jemand ein Beispiel bzw. Ideen wie ich das möglichst einfach realisieren kann ?


Viele Grüße

Benny
 
Verstehe ich dich richtig.
Du willst in der ersten Liste die Namen aller Datenbanken eintragen und wenn dort eine ausgewählt wurde, sollen in der zweiten Listen alle Tabellen aufgelistet werden die in der entsprechenden Datenbank enthalten sind?
 
Ne, Sorry .. ich habe mich da wohl nen bisschen blöde ausgedrückt..

Ich habe ein Array in dem sind die DB Namen hinterlegt (Gebäude 1, Gebäude 2, etc. ), dieses Array will ich mit einem Dropdown anzeigen, und ein Gebäude auswählen .

Das 2te Dropdown soll aus dem DB namen z.B Gebäude 1 alle Tabellen die dort drinn sind (Klasse 1, Klasse 2, etc. ) als auswahl bieten und die ausgewählte Klasse wieder als Array ablegen

Gruß

Benny
 
PHP:
$gebs = array("geb1", "geb2"...);

print '<select>';
foreach($gebs as $geb){
print '<option value="'.$geb.'">'.$geb.'</option>';
}
print '</select>';
 
Und wie übergebe ich das Ausgewählte Gebäude an das nächste Dropdown auf der Seite das dann die tabellen aus dem DB anzeigt ?
 
Du gibst dem SELECT einen Namen ("db") und wenn das Forumular z.B. mit POST verschickt wird prüfst du den Inhalt dieser Variablen -> $_POST["db"]
 
Ich glaube ich bin zu doof dafür, kann mir einer von euch nicht den Code für beide Dropdowns zusammenhängend schreiben ?

Bisher habe ich follgendes für die Asuwahl:

PHP:
echo'<select name="Datenbank" ';

while($row = mysql_fetch_assoc($result))
{
 echo' <option value="'.$row['DB'].'">'.$row['DB'].'</option>';
}

echo'</select>';
 
Ich hoffe mal das stimmt jetzt so:

PHP:
<form name="form" action="db.php" method="post">
<select name="db" size="5" style="width:200px;">
<?php
while($row = mysql_fetch_assoc($result)) { 
    echo' <option value="'.$row['DB'].'">'.$row['DB'].'</option>';
}
?>
</select>
<br>
<?php
if (isset($_POST["show"])) {
?>
<select name="tbl" size="5" style="width:200px;">
<?php
while ($row = mysql_fetch_assoc($result)) {
    echo' <option value="'.$row['TABELLE'].'">'.$row['TABELLE'].'</option>';
}
?>
</select>
<br />
<input type="Submit" name="show" value="Tabellen anzeigen" />
</form>

Den Dateinamen im action-Tag musst du dann natürlich ändern und die SQL-Abfragen musst du logischerweise auch noch an den entsprechenden Stellen einbauen.
 
Zuletzt bearbeitet:
Und an welchem Punkt bekommt das zweite Dropdown übergeben was mas man beim ersten gewählt hat ?
 
PHP:
<?php
if (isset($_POST["show"])) { 
// hier muss die SQL-Abfrage erstellt werden um die entsprechenden Daten zu ermitteln
$sql = "SELECT * FROM tabelle WHERE feld = 'abc'";
$result = mysql_query($sql);
?> 
<select name="tbl" size="5" style="width:200px;"> 
<?php 
while ($row = mysql_fetch_assoc($result)) { 
    echo' <option value="'.$row['TABELLE'].'">'.$row['TABELLE'].'</option>'; 
} 
?>
 
Zurück