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
get geht, aber post nicht, warum?
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Na dann lass dir doch die Zwischenergebnisse ausgeben, um den Fehler einzugrenzen.
Übrigens: wir haben hier im Forum extra Tags für Python-Code.
Übrigens: es gibt bessere Wege um solche Skripte zu schreiben. Siehe etwa Flask/Bottle.
Übrigens: wir haben hier im Forum extra Tags für Python-Code.
Übrigens: es gibt bessere Wege um solche Skripte zu schreiben. Siehe etwa Flask/Bottle.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice