Seite 1 von 2

Verfasst: Freitag 21. Januar 2005, 23:58
von Gast
action="cgi-bin/test.py"
Macht das selbe, wüste auch nicht, was das hätte ändern sollen.

Gruss, Dominik

Verfasst: Samstag 22. Januar 2005, 14:13
von Slalomsk8er

Code: Alles auswählen

def main():
    print "Content-type: text/html\n"
    print "<html>"
    print "<head>"
    print "<title>test.py</title>"
    print "</head>"
    print "<body>"
    print ' <form method="post" action="test.py" enctype="multipart/form-data">'
    print ' <p>Your first name: <input type="text" name="firstname">'
    print ' <p>Your last name: <input type="text" name="lastname">'
    print ' <p>Click here to submit form: <input type="submit" value="Yeah!">'
    print "</form>"
    print "</body>"
    print "</html>"
main()
Nun ist das HTML von test1.py generiert und funzt immer noch nicht :cry: (genau gleich wie vorher)

Gruss, Dominik

Verfasst: Samstag 22. Januar 2005, 14:25
von Milan
HI. Dann nur noch ein letzter Test: ich möchte wissen, ob es an den Libary's liegt. Stell mal bitte von POST auf GET um, und lass im CGI-Script sowohl form als auch os.environ ausgeben. Dann müsste aus dem log im Server erkennbar sein, ob a) ein querry übergeben wird b) aus os.environ auszulesen sein, ob einer ankommt (wenn nicht Fehler im Server irgendwo) und c) dieser querry verarbeitet wird (form), was Aufgabe des Moduls cgi ist. Danach guck ich mir mal die Quelltexte an und such ein wenig :wink:

Verfasst: Samstag 22. Januar 2005, 16:11
von Milan
Hi. Brauchst du doch nicht zu machen. Ich schau mir jetzt mal die Quelltexte von CGIHTTPServer und SocketServer/BaseHTTPServer an. Da muss in der 2.4er Version ein BUG drin sein, bei mir kommen die Querrys nicht an (werden nicht in os.environ aufgeführt). Ist mir bis jetzt nur nicht aufgefallen, weil ich vor allem Scripte laufen hab, die ohne Formularangaben auskommen.

Verfasst: Samstag 22. Januar 2005, 16:32
von Milan
Hi nochmal. Es handelt sich um einen bekannten Bug, er wurde behoben (siehe Link). Ursache war wohl ein Fehler in der Handlerclass (Modul CGIHTTPServer), wobei jetzt statt mit os.popen mit dem neuem subprocess Modul gearbeitet wird. Einfach die neue Datei downloaden und damit die alte ersetzen, dann sollte es laufen. Bei mir tut es das jetzt auch. Ich glaube, es ist ein Update auf Python 2.4.1 angebracht, wenn das bald rauskommt...

mfG Milan

Verfasst: Samstag 22. Januar 2005, 19:06
von Slalomsk8er
Danke,

Milan du bist spitze. Ich hatte mich auch durch einige Bugraports gequält, jedoch nur welche wegen angehängten zeichen gefunden (IE und Netscape).

Da macht coden doch gleich wieder freude.

Gruss, Dominik