2016-06-26 8 views
0

Ich arbeite an einem Projekt für meine Schule für die Änderung der grundlegenden Wireless-Parameter in einem Linux-Router mit Befehlen nur mit HTML-GUI. Ich habe hauptsächlich mit PHP gearbeitet. Bisher lief es gut, aber jetzt bin ich fest und ich kann keine klare Lösung für mein kleines Problem finden.Dropdown-Menü mit Standardwert aus TXT-Datei

Ich habe folgendes Dropdown:

<form method="post" action="changefrequency.php"> 
<select name="freq"> 
<option value="auto">Auto</option> 
<option value="2412">Channel 1</option> 
<option value="2417">Channel 2</option> 
<option value="2422">Channel 3</option> 
<option value="2427">Channel 4</option> 
<option value="2432">Channel 5 </option> 
<option value="2437">Channel 6</option> 
<option value="2442">Channel 7</option> 
<option value="2447">Channel 8</option> 
<option value="2452">Channel 9</option> 
<option value="2457">Channel 10</option> 
<option value="2462">Channel 11</option> 
<option value="2467">Channel 12</option> 
</select> 
    <input type="submit" value="Set Frequency"/> 
</form> 
</div> 

ich den Wert schreiben wir Option 2432 (channel5) sagen zu einem Router via PHP scripting mit dem Befehl im Inneren FTP-Upload und es funktioniert gut. Ich habe ein Skript erstellt, das automatisch in einer txt-Datei die Häufigkeit herunterlädt. Nehmen wir an, der Benutzer wurde aus dem HTML ausgewählt und im Dropdown-Kanal 5 mit dem Wert 2432 übergeben. Ich erhalte lokal einen Txt, der 2432 oder die Frequenz = 2432 enthält.

Jetzt meine Frage ist, wie können wir überprüfen, welcher Wert wird es in der TXT-Datei sein und es als Standardwert für meine Dropdown-Liste? Wenn der Benutzer die Frequenz ändert, wird der Standardwert im Dropdown-Menü geändert.

danke!

Antwort

0

$freqNumber = file_get_contents("mytextfile.txt"); (Antwort von Anthony Astige sehen) ich in den folgenden Zeilen wird angenommen, dass $ freqNumber nur die Nummer enthält, wenn nicht, müssen Sie passe es mit php an.

Dann müssen Sie überprüfen, wo die "ausgewählte" hinzufügen, die HTML sagt, welche ist der Standardwert, der ausgewählt ist. Sie können in der folgenden Art und Weise dies tun:

<option value="2412" <?php if($freqNumber == 2412){echo " selected";} ?>>Channel 1</option> 

Sie können dies für jede Option tun.

0

Lesen Sie die Datei mit file_get_contents

Dann PHP HTML mit the correct default option pre-selected

+0

ich kenne file_get_contents, ich kann es in einem anderen Textrahmen zum Beispiel zeigen: Die Frequncey ist: 2432, die Idee ist, wie die DEFAULT VALUE der Dropdown –

+0

Ich habe meine Antwort –

+0

aktualisiert Vielen Dank für den Versuch zu helfen aber der Dafault-Wert muss aus der TXT-Datei gelesen werden. Der Standardwert muss dynamisch geändert werden, so oft der Benutzer öffnet. Sagen wir "index.html". Die .txt-Datei muss gelesen werden und der Standardwert muss geändert oder überprüft werden. Irgendeine Idee, wie man das macht? –

0

Verwenden file_get_contents in $ val, senden verwenden und dann

<option value="2412" <?php if($val == '2412'): ?>selected<?php endif; ?>>Channel 1</option> 

Natürlich verwenden, ist dies mühsam zu tun jede einzelne Frequenz, so dass ich schlage vor, Sie alle diese in einem Array wie

$frequencies = ['2412' => 'Channel 1', '2417' => 'Channel 2']; 
speichern

etc und dann iterieren wie die Optionen auszudrucken

foreach($frequencies as $k => $v): 
    if($k == $val) 
     $selected = 'selected'; 
    else 
     $selected = ''; 
    echo '<option value="' . $k . '" ' . $selected .' >' . $v . '</option>'; 
endforeach;