cgi FieldStorage manipulieren

Sockets, TCP/IP, (XML-)RPC und ähnliche Themen gehören in dieses Forum
Antworten
rebeling
User
Beiträge: 10
Registriert: Mittwoch 11. Juni 2008, 21:16
Wohnort: berlin
Kontaktdaten:

Samstag 19. Juli 2008, 10:35

Hallo,

kann man den Minifieldstorage innerhalb einer Funktion manipulieren, löschen oder ersetzen?

damit rufe ich die Seite auf: backend.py?value=zero

Code: Alles auswählen

def get_filecontent():
    form = cgi.FieldStorage()
    print """<div id="content">"""
    if form.has_key('value'):
        #print form['value'].value
        print "<h1>OUT OF ORDER - DON'T USE IT</h1>..."

        ...
        
        ### rename
        print """<br><h1>Rename a file</h1>"""
        print """<form action='backend_basics.py?value=zero' method="get" target="_self">
                      <input name="rename" type="text" size="23" maxlength="23">
                      <input type="submit" value="rename">
                 </form>"""
    
     
    elif form.has_key('rename'):
        
        #rename(form['oldname'].value,form['rename'].value)
        print 'wurde umbenannt'
        print form   # HIER: kann ich das irgendwie manipulieren
                         # so dass, nachdem rename hier abgearbeitet wurde
                         # wieder value=zero im FieldStorage steht, aber rename eben nicht???
        form = []
        print form
        x = cgi.FieldStorage()
        print x
rename darf nach Abarbeitung des Bereichs nicht mehr im FieldStorage stehen,
ach und ich muss die Seite an der Stelle automatisch neu laden, und im FieldStorage darf dann nur value=zero stehen?!

Wäre toll, wenn jemand eine Idee/Lösung hätte, ich find dazu nichts!
Und ich kann nicht mehr zu einem Framework wechseln, in denen es bestimmt viel einfacher geht.

Liebe Grüße,
Matthias
rebeling
User
Beiträge: 10
Registriert: Mittwoch 11. Juni 2008, 21:16
Wohnort: berlin
Kontaktdaten:

Montag 21. Juli 2008, 17:37

Hallo,

an alle Rentner die von CGI nicht loskommen,
schreibt am Ende der Funktion (in diesem Fall):

Code: Alles auswählen

        
print "<script type='text/javascript'>location.href='backend_basics.py?value=zero'</script>"
Die Werte nach 'submit' führen in den gewünschten def Bereich und am Ende , als letzten Schritt print Zeile oben und der User wird auf die ursprüngliche Seite geleitet.
Für alle anderen erarbeitet euch WSGI - thats the future :)

lg matthias
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Montag 21. Juli 2008, 17:51

Übrigens schließen sich WSGI und CGI nicht aus - WSGI arbeitet auch unter CGI.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Antworten