Seite 1 von 1

nicht gewollter seitenwechsel.

Verfasst: Montag 12. Januar 2009, 16:25
von dracana
Hallo,
ich hab gerad dieses forum auf mein problem durchsucht, aber nichts passendes gefunden :S ich habe eine html dokument geschrieben ( hier ein kleiner übersichtlicher ausschnitt )
<form method="post" action="cgi-bin/pic_write.py">
<input name="forward" type="submit" value="forward">
<input name="backward" type="submit" value="backward">
</form>
wenn ich nun auf einen dieser button klicke wird auf die datei "pic_write.py" gewechselt. Dies möchte ich allerdings verhindern. er soll nur nur die datei "pic_write.py" ausführen aba nicht zu ihr wechseln.

url vor dem betätigen des button:
url nach dem betätigen des button:
er soll allerdings weiter die pic.html seite anzeigen...

falls es hilft: quelltext der "pic_write.py" datei:

Code: Alles auswählen

# Module
import os
import cgi

# Variabeln
cgivar = cgi.FieldStorage()
forward = cgivar.has_key('forward')
backward = cgivar.has_key('backward')
name = 'index.txt'

# Hauptprogramm
if os.path.isfile(name) == True:
   lesedatei = open(name, 'r')
   inhalt = lesedatei.read()
   inhalt = int(inhalt) + 1
   lesedatei.close()
   if forward == True:
      schreibdatei = open(name, 'w')
      schreibdatei.write(str(inhalt))
      schreibdatei.close()

else:
   print "Error: Data not found"
wie sinnvoll oder nicht sinnvoll dies ist, sei ma bitte in den raum gestellt. Es wäre sehr nett, wenn mir jemand bei meinem Problem hilft.

Vielen Dank im Voraus

MfG: Thorsten

Verfasst: Montag 12. Januar 2009, 16:28
von derdon
Dann darfst du keine Buttons vom Typ `submit` benutzen. Wenn ein Submit-Button gedrückt wird, dann sendet der Client (Webbrowser) einen (in deinem Fall Post)-Request an den Server. Vielleicht möchtest du Ajax oder normale Links benutzen.

Verfasst: Montag 12. Januar 2009, 16:45
von tordmor
Die einfachste Möglichkeit ist von pic_write.py aus einen redirect zurück zu machen.

Verfasst: Mittwoch 14. Januar 2009, 14:15
von dracana
danke :D, das mit dem redirect ist eine sehr gute idee... stimmt das gleiche problem hatte ich vor ein paar jahren in perl schonma ^^

oke vielen dank ich hab das Problem gelöst =)

MfG: Thorsten