ich habe da noch ein kleines Verständnisproblem zu CGI Scripten und der Ausgabe.
Also, ich habe ein einfaches CGI Script, z.B.:
Code: Alles auswählen
#!/usr/bin/python
# -*- coding:utf-8 -*-
print "Content-Type: text/plain;charset=utf-8;\n"
print
import cgi
fs = cgi.FieldStorage()
print "Dein Name ist: %s" % (fs.getvalue("Vorname"), )
Dazu habe ich auf einer beliebigen HTML Seite folgendes Formular:
Code: Alles auswählen
<form action="/Pfad zu meinem Script/auswertung.py" method="get">
<input type="text" name="Vorname" maxlength="20" size="30" value="" />
<input type="submit" value="Abschicken" />
</form>
Schicke ich das Script nun ab, dann bekomme ich meine Auswertung ja erstmal nur auf einer neuen Seite, in reinem Textformat. Was ja auch Ok ist. Nun will ich aber, dass mein Ergebnis in einer HTML Datei steht, und zwar in einer bereits fertigen Datei, z.B. in meiner "index.html".
Ich habe versucht, es mittels SSI zu machen und das Script so einzufügen:
Code: Alles auswählen
<!--#include virtual="/Pfad zum Script/auswertung.py" -->
Nun würde ja auch noch die Möglichkeit bestehen, dass ich meine komplette HTML Seite mit Python generiere. Also einfach ein CGI Script, in welches ich dann sowas hier schreibe:
Code: Alles auswählen
#!/usr/bin/python
# -*- coding:utf-8 -*-
print "Content-Type: text/html;charset=utf-8;\n"
print
import cgi
fs = cgi.FieldStorage()
vorname = fs.getvalue("Vorname")
print """
Hier den kompletten HTML Code, z.B.
Dein Name ist: <b>%s</b>
"""
% (vorname, )
Aber mir scheint das nicht der geeignete Weg, da ich es etwas zu "viel" finde. Oder besser gesagt:
Ich möchte, dass mein CGI Script einfach nur reinen text enthält und die Funktionalität zum Auslesen meiner Formulare. Die Ergebnisse möchte ich dann direkt in eine HTML Datei umleiten, also in der Art wie ich es mit dem "include virtual"-Tag mache, nur eben mit den einzelnen Werten und auch nur dann, wenn das Script aufgerufen wird.
Ist das so überhaupt möglich in Python (ohne ein Framework und ohne PSP) ? Oder muss ich letzten Endes doch ganze HTML Seiten generieren?
Gruß
ne0h