get geht, aber post nicht, warum?
Verfasst: Samstag 27. November 2010, 16:17
hallo zusammen!
ich habe zwei seiten, dir mir kopfweh machen. beide führen das aufgerufene cgi skript nicht aus wenn sie mit post aufgerufen werden.
es reicht vielleicht, wenn ich mal eine bespreche.
das erste ist eine seite zum login:
Code:
class AdminLoginSite(Site):
divb='''<div style='width:555; margin-top:150px; margin-bottom:125px;'>'''
content='''<form method='post' action='../cgi-bin/checklogin.py'>
<p class='text'>Bitte Passwort eingeben:</p>
<p class='text'><input type='password' name='passwort' size='10'></p>
<p class='text'><input type='Submit' value='abschicken'></p>
</form>'''
und nund das skript checklogin:
Code:
#!/usr/local/bin/python
from sites import AdminChooseSite, AdminLoginSite, ErrorSite
import cgi, md5
form=cgi.FieldStorage()
if form.has_key('passwort'):
password=form.getvalue('passwort')
target='/var/www/cgi-bin/admin.dat'
m=md5.new(password)
f=file(target,'r')
testpassword=f.read()
f.close()
if m.digest()==testpassword:
ok=AdminChooseSite()
else:
not_ok=ErrorSite('Falsches Passwort!','zum Login')
else:
not_ok=ErrorSite('Kein Passwort angegeben!','zum Login')
wie gesagt: tausche ich method post gegen get aus gehts, ansonsten bekomme ich die selbstdefinierte ErrorSite: Kein Passwort, zu sehen.
vielen dank im voraus
ich habe zwei seiten, dir mir kopfweh machen. beide führen das aufgerufene cgi skript nicht aus wenn sie mit post aufgerufen werden.
es reicht vielleicht, wenn ich mal eine bespreche.
das erste ist eine seite zum login:
Code:
class AdminLoginSite(Site):
divb='''<div style='width:555; margin-top:150px; margin-bottom:125px;'>'''
content='''<form method='post' action='../cgi-bin/checklogin.py'>
<p class='text'>Bitte Passwort eingeben:</p>
<p class='text'><input type='password' name='passwort' size='10'></p>
<p class='text'><input type='Submit' value='abschicken'></p>
</form>'''
und nund das skript checklogin:
Code:
#!/usr/local/bin/python
from sites import AdminChooseSite, AdminLoginSite, ErrorSite
import cgi, md5
form=cgi.FieldStorage()
if form.has_key('passwort'):
password=form.getvalue('passwort')
target='/var/www/cgi-bin/admin.dat'
m=md5.new(password)
f=file(target,'r')
testpassword=f.read()
f.close()
if m.digest()==testpassword:
ok=AdminChooseSite()
else:
not_ok=ErrorSite('Falsches Passwort!','zum Login')
else:
not_ok=ErrorSite('Kein Passwort angegeben!','zum Login')
wie gesagt: tausche ich method post gegen get aus gehts, ansonsten bekomme ich die selbstdefinierte ErrorSite: Kein Passwort, zu sehen.
vielen dank im voraus