selfhtml.de - Alles für den Webmaster!

 

Empfehlung:

wix.com

Kostenlose Homepage

Besuchen Sie auch:

Jobs:

CGI-Refresh Form nach Submit

Autor: josef777
Datum: 11.09.2009 19:55:57

Hallo,
ich habe folgende CGI-Skript gebastelt:

#!/bin/bash
# Speichert die POST request Parameter
my_conf="/opt/my.conf"

# Import von schon gespeicherten Parameter
source $my_conf

# Capture stdin for POST methods and use tr to grab stdin and append a newline
STDIN=$(cat)
if [ -n "$STDIN" ]; then
  QUERY_STRING="${STDIN}&${QUERY_STRING}"
    if [ -n "$QUERY_STRING" ]; then
        # name=value sind gespeichert
        echo $QUERY_STRING | tr "&" "12" > $my_conf
    fi
fi

# Insert header
echo "content-type: text/html"
echo ""
echo "<head><title>LAN Interface</title>"

# Insert Javascripts
cat<<JScript
<SCRIPT type="text/javascript" language="JavaScript">
function myForm() {
    // prueft die eingabe, wird spaeter geschrieben
    return true;
}

function setAutoForm() {
        document.myform.size.value = '$size';
//      window.location.reload("/cgi-bin/my.cgi");
}
</SCRIPT>
JScript

# Print the form
echo "</head>"
echo "<html>"

cat <<INSERT_FORM
<BODY onload="setAutoForm()">
<form name="myform" action="/cgi-bin/my.cgi" method="post" onsubmit="return myForm();">

<TABLE>
<TR>
  <TD>Size:</TD>
  <TD><input size="10" type="text" name="size" value="$size"> Bytes</TD>
</TR>
</TABLE>

<hr size="1" width="20%" align="left" noshade >
<input type="submit" size="40" align="middle">
</form>
</body>
INSERT_FORM

echo "</html>"

Mit Submit wird in der Datei my.conf der Parameter "size" und sein Wert (zB: size=3000) abgespeichert. Wenn die Seite neu geladen wird, erscheint im Textfeld leider nicht die letzte Eingabe; dafür sollte ich aber noch ein Refresh im Browser machen.

Wie kann man, ohne auf dem Reload/Refresh-Button zu klicken, die letzte Eingabe im Textfeld anzeigen lassen?


Meine Vesuchungen mit <meta http-request.....> oder Redirect haben nicht richtig funktioniert.

Danke im Voraus.
josef777