Subversion Repositories Applications.papyrus

Compare Revisions

Ignore whitespace Rev 2149 → Rev 2150

/trunk/api/js/dojo1.0/dojo/tests/io/upload.cgi
New file
0,0 → 1,60
#!/usr/bin/python
 
# FROM: http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/273844
 
import cgi
import cgitb; cgitb.enable()
import os, sys
import string
 
UPLOAD_DIR = "/tmp/upload/"
form = cgi.FieldStorage()
 
dbg = []
 
def debug(dbgstr):
dbg.append(str(dbgstr))
 
def save_uploaded_file(form_field, upload_dir):
global form
if not form.has_key(form_field):
debug("didn't find it! (1)")
return
fileitem = form[form_field]
if not fileitem.file:
debug(form.getvalue(form_field, ""))
debug(fileitem.__dict__)
debug("didn't find it! (2)")
return
fout = file(os.path.join(upload_dir, fileitem.filename), 'wb')
while 1:
chunk = fileitem.file.read(100000)
if not chunk: break
fout.write (chunk)
fout.close()
 
retval = "false";
fileFields = ""
 
if form.has_key("fileFields"):
fval = str(form.getvalue("fileFields", ""))
fileFields = fval.split(",")
debug("'fileCount': '" + str(len(fileFields)) + "',")
for field in fileFields:
debug("'fileField' : '"+field + "',")
save_uploaded_file(str(field).strip(), UPLOAD_DIR)
retval = "true";
 
debug("'retval': " + retval)
 
print """Content-Type: text/html
 
 
<html>
<head>
</head>
<body>
<textarea style="width: 100%%; height: 100px;">{ %s }</textarea>
</body>
</html>
""" % (string.join(dbg, "\n"))