So analysiert wird Ich bin derzeit einen Python-Skript-Scan für WiFi-Netzwerke mit und die Ergebnisse ausdrucken:Python und PHP nicht Ball spielen, nur sehr kleiner Teil
from subprocess import check_output
scanoutput = check_output(["iwlist", "wlan0", "scan"])
print '<select name="ssid">'
for line in scanoutput.split("\n"):
line = line.strip()
if line.startswith("ESSID:"):
line=line[7:-1]
print '<option value="' + line + '">' + line + </option>'
print "</select>"
Es sieht gut, wenn ich es versuchen in SSH:
<select name="ssid">
<option value="easybell DSL">easybell DSL</option>
<option value="FRITZ!Box Fon WLAN 7360 SL_EXT">FRITZ!Box Fon WLAN 7360 SL_EXT</option>
<option value="WLAN-519293">WLAN-519293</option>
<option value="NoTrespassing">NoTrespassing</option>
<option value="Cinque">Cinque</option>
<option value="EasyBox-738461">EasyBox-738461</option>
<option value="FRITZ!Box WLAN 3270">FRITZ!Box WLAN 3270</option>
</select>
, die von PHP wird dann verwendet:
<form action="/cgi-bin/process.py" method="get">
<?php $output=shell_exec("/usr/bin/python cgi-bin/wifi-scan.py"); print_r($output);?>
<input type="password" value="password" name="psk" onfocus="this.value = '';" onblur="if (this.value == '') {this.value = 'Password';}">
<div class="submit"><input type="submit" onclick="myFunction(){shell_exec("process.py")}" value="Connect" ></div>
</form>
Leider jedoch, wenn ich auf die Website gehen, ist es nur Zeigt eine Option im Dropbox-Menü an. In meiner Frustration ließ ich den Python-Code über SSH laufen, um zu sehen, ob es funktionierte und was das Problem sein könnte. Als ich die Website direkt danach aktualisiert habe, sind alle Optionen aufgetaucht.
Dies scheint hartnäckig zu sein.
Um in der Lage zu sein, eine vollständige Liste zu erhalten, muss ich zuerst über SSH ausführen, bevor ich die Website aktualisieren und eine vollständige Liste anzeigen kann. Dies dauert etwa 10 Sekunden, danach erscheint nur die erste Option und es ist ein manueller Eingriff erforderlich.
Was könnte das Problem hier sein? Ich bin mit meinem Verstand hier Ende!
Danke !!
In meinem Problembehandlungsmodus Ich dachte, es wäre vielleicht ein Apache2-Fehler, also habe ich stattdessen lighttpd installiert, das zeigt das gleiche Problem. – user5740843