ich versuche seit einigen Stunden folgendes zu verwirklichen:
Für die Fritz!Box gibt es ein WOL Paket, mit welchem man über ein Interface verschiedene Computer auswählen kann, und anschließend per Buttom "WakeUp" den PC per WOL aufwecken kann.
Ich möchte nun in dieses Interface einen weiteren Button einbauen, welcher automatisch die Werte "mac" und "interf" setzt und anschließend ein submit macht
Mein Ansatz war, dies in einem Script zu durchlaufen, welches ich per OnClick aufrufe.... leider passiert hier nichts.
Mein bisheriger Versuch:
- Code: Alles auswählen
- <script>
 function myEvents(macad,interfnam){
 document.wake.mac.value=macad;
 document.wake.interf.value=interfnam;
 submit;
 }
 </script>
 <TD> <input type="button" value="FamServer"
 onclick="myEvents('00:27:0E:07:40:26','lan');"></TD>
Ganzes CGI:
- Code: Alles auswählen
- #!/bin/sh
 cgi_width=560
 . /usr/lib/libmodcgi.sh
 cgi_begin 'Wake on LAN'
 cat << EOF
 <p>
 Bekannte Hosts:
 <select onChange="var s = this.options[this.options.selectedIndex].value; document.wake.mac.value = s.substr(0,s.search(/\*/)); document.wake.interf.value = s.substr(s.search(/\*/)+1); return false;">
 <option value="*" selected>(wählen)</option>
 EOF
 if [ -r /var/media/ftp/uStor01/Daten/wolHosts ]; then
 egrep -v '^(#|[[:space:]]*$)' /var/media/ftp/uStor01/Daten/wolHosts |
 while read -r ip mac interface host desc; do
 if [ dhcp-host = "$mac" ]; then
 if [ -n "$host" -a -r /var/tmp/multid.leases ]; then
 mac=$(sed "/${host}/!d;s/^lease //;s/ .*//" /var/tmp/multid.leases)
 else
 continue
 fi
 fi
 if [ -n "$mac" -a "$mac" != "*" ]; then
 if [ -n "$interface" -a "$interface" != "*" ]; then
 value="$mac*$interface"
 else
 value="$mac*"
 fi
 echo -n '<option value="'"$value"'">'
 if [ -n "$desc" ]; then
 [ '*' != "$host" ] && echo -n "$host "
 echo -n "$desc"
 elif [ -n "$host" -a "$host" != "*" ]; then
 echo -n "$host"
 else
 echo -n "$mac"
 fi
 echo '</option>'
 fi
 done
 fi
 cat << EOF
 </select>
 </p>
 <p>MAC und Netzwerk-Schnittstelle für Etherwake angeben oder einen der bekannten Hosts wählen.</p>
 <form style="padding-top: 10px; padding-bottom: 10px;" name="wake" action="/cgi-bin/wake.cgi" method="post">
 <table border="0" cellspacing="1" cellpadding="0">
 <tr>
 <td width="200">MAC: <input type="text" name="mac" size="17" maxlength="17" value=""></td>
 <td width="180">Interface: <select name="interf">
 EOF
 echo '<option title="" value=""></option>'
 for INTERFACE in $(ifconfig | grep ^[a-z] | cut -f1 -d ' '); do
 echo '<option title="'$INTERFACE'" value="'$INTERFACE'">'$INTERFACE'</option>'
 done
 echo '</select></td>'
 foundwol=$(which wol)
 if [ -x "$foundwol" ]; then
 cat << EOF
 <td width="180">Methode:<select name="prog">
 <option selected value='ether-wake'>ether-wake</option>
 <option value='wol'>wol</option>
 </select></td>
 EOF
 fi
 cat << EOF
 <td width="100"><input type="submit" value="WakeUp"></td>
 <script>
 function myEvents(macad,interfnam){
 document.wake.mac.value=macad;
 document.wake.interf.value=interfnam;
 submit;
 }
 </script>
 <TD> <input type="button" value="FamServer"
 onclick="myEvents('00:11:22:33:44:55','lan');"></TD>
 </tr>
 </table>
 </form>
 EOF
 cgi_end
Ich bin mit meinem Latein am Ende, bzw mir fällt auch nicht mehr ein nach was ich suchen muss, um weiter zu kommen,
daher bin ich für Tipps, Denkanstöße oder ev. sogar Lösungen dankbar.
MfG
die0kleine0Meinung


