On Wed, Mar 26, 2014 at 11:16 AM, Jan Horáček <[email protected]> wrote: > import web > > urls = ('/upload', 'Upload') > > class Upload: > def GET(self): > web.header("Content-Type","text/html; charset=utf-8") > return """<html><head> > </head><body> > <form method="POST" enctype="multipart/form-data" action=""> > <input type="file" name="myfile" /> > <br/> > <input type="submit" /> > </form> > </body></html>""" > > def POST(self): > x = web.input(myfile={}) > filedir = 'C:/webserver/webpy/files' # change this to the directory > you want to store the file in. > if 'myfile' in x: # to check if the file-object is created > filepath=x.myfile.filename.replace('\\','/') # replaces the > windows-style slashes with linux ones. > filename=filepath.split('/')[-1] # splits the and chooses the > last part (the filename with extension)
Why are you doing this? `x.myfile.filename` should contain the *filename* only, not the full path. > fout = open(filedir +'/'+ filename,'w') # creates the file where > the uploaded file should be stored I am shooting in the dark here, but have you tried opening the destination file specifying the *binary* flag?: open(path, 'wb') Ciao, Matteo -- You received this message because you are subscribed to the Google Groups "web.py" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/webpy. For more options, visit https://groups.google.com/d/optout.
