Ah okay, war mir nicht sicher habs einfach mal genauso aufgebaut wie es bei dir ist
Okay dann nochmal zum Verständnis meiner Seite.
Im Bereich oben links befindet sich wie eine Art Zeitstrahl, wo die Benutzer einen Punkt in ihrem Projektfestlegen können. Dies ist in der 1. PHP Datei geregelt.
Im rechten oberen Bereich, befindet sich dann die PHP Datei um die es eigentlich geht. Hier sind 4 Dropdown Menüs vorhanden. Auch hier kann der Benutzer eben eine Auswahl treffen. Diese Auswahl wird dann bislang, wie in #1 gezeigt, per form zu der dritten php Datei geschickt. In der dritten PHP Datei frag ich die Variablen dann ab, und auf Grundlage dieser wird eine SQL Abfrage durchgeführt und eine Ergebnisliste angezeigt.
Das Ausgangsproblem ist jetzt, dass ich in der 2. PHP Datei, die mit den Dropdowns, bislang zwei Buttons habe. Einen Reset, und einen Submit. Der Submit schickt die ausgewählten Variablen an die 3. PHP Datei, die mit der Ergebnisliste und der SQL Abfrage. Der Reset leert aktuell nur die ganzen Dropdownauswahlen. Um aber die Ergebnisliste zu aktualisieren, muss der Benutzer nachdem er auf Reset gedrückt hat, nochmal auf Filter drücken. Diese Funktion probier ich in dem Reset button zu vereinen. Also Einträge im Dropdown löschen/zurücksetzen dass keine Auswahl getroffen ist (was er bereits einfach mit <button type="reset"> macht) und jetzt soll aber bei diesem Button zusätzlich alle Variablen leer an die PHP Datei mit der Ergebnisliste geschickt werden, dass die sich wie beim Klick auf den Submitbutton neu lädt.
Ich zeig dir nun mal, vereinfacht, den Aufbau der PHP Datei mit den Dropdowns.
header('Content-Type: text/html; charset=iso-8859-1');
// get variables from user selection
if (isset($_GET["v1"])) {$v1 = $_GET["v1"];} else {$v1="met";}
if (isset($_GET["v2"])) {$v2 = $_GET["v2"];} else {$v2="all";}
if (isset($_GET["v3"])) {$v3 = $_GET["v3"];} else {$v3="g1";}
if (isset($_GET["v4"])) {$v4 = $_GET["v4"];} else {$v4="en";}
v1&v2 stellen jetzt einfach mal die Variablen aus dem Zeitstrahl dar, v3&v4 sollen die Variablen im Dropdown sein.
Dann folgte der Verbindungsaufbau mit der Datenbank (ist schätz ich für die Frage nicht relevant), und im nächsten Schritt öffne ich das Form Element, dem ich sage, dass er die Variablen in die 3. Datei (result.php) schicken soll.
// Aufbau des Auswahlformulars
echo '<form method="POST" action="result.php?v1='.$v1.'&v2='.v2.'&v3='.$v3'&v4='.$v4.' " target="result">', PHP_EOL;
Dann folgen die Datenbankabfragen für die Werte, die im Dropdownmenü angezeigt werden sollen (die sind nämlich nur einmal hardgecoded, die anderen Auswahlmöglichkeiten werden dynamisch erzeugt) Beispiel:
// Ausfuehren einer SQL-Anfrage: Auswahlformular 'Type', Werte ohne Wiederholungen
$query2 = "SELECT DISTINCT type_".$v4." FROM $database_name_eb WHERE type_".$v4." <> 'empty'";
$result2 = mysqli_query($link, $query2) or die("Request failed: " . mysqli_error($link));
Dann folgen ein paar Variablendefinitionen für die Mehrsprachigkeit des Auswahlformulars, auch unnötig für die Frage.
Und dann geht's auch schon direkt los mit den Auswahlformularen, als Beispiel ein hardgecodetes, und ein dynamisch erzeugtes:
// Auswahlformular 'Type'
if(mysqli_num_rows($result2)){ $select2= '<select name="type">';
$select2.='<option selected></option>';
while($rs2=mysqli_fetch_array($result2)){
// keine leeren Elemente
if ($rs2['type_'.$v4]!='') $select2.='<option>'.$rs2['type_'.$v4].'</option>'; }}
$select2.='</select>';
//Auswahlforumlar hardcoded
$select= '<select name="v3" >';$select.='<option selected></option>';
$select.='<option>verpflichtend</option>';
$select.='<option>tailorbar</option>';
$select.='</select>';
Alles anzeigen
Nun werden die Dropdowns dargestellt, hinter den Variablen "type_designator" und "v3_designator" stehen einfach nur deutsche und englische Bezeichnungen fürs Dropdown.
/// Darstellung in einer Tabelle
echo '<table border="0" cellpadding="5">';
echo '<tr valign="top">';
echo '<td align="right">'.$type_designator.' </td>';
echo '<td>'.$select2;
echo "</td>";
echo '<td align="right">'.$v3_designator.' </td>';
echo '<td>'.$select;
echo "</td>";
echo '</tr>';
echo '<td align="right"> <button type="reset">'.$clearbutton_designator.'</button></td><td align="left"><input type="submit" name="Submit" value="Filter"></td>';
echo' </table></form>';
[/Code]
Abschließend wird das SQL Resultat freigegeben und die Verbindung wieder geschlossen.
[Code=php]
// Freigeben des Resultsets
mysqli_free_result($result2);
// Schließen der Verbinung
mysqli_close($link);
Alles anzeigen
Vereinfacht, wars das auch schon.
Ich hoffe, ich habe es verständlich erklärt. Und schon mal vielen Dank für die Zeit die du dir nimmst!