如何在网页上上传多个文件并保存在web.py中的磁盘上?

时间:2016-05-20 07:30:27

标签: python-2.7 web.py

我正在跟随Zed shaw http://jsfiddle.net/ssSt5/57/关注LPTHW ex51,并且正在web.py上进行他的学习练习,我是一名web.py初学者并且成功地在网页表单上传图像然后将其存储在本地文件夹。问题是我存储的每个图像,取代了之前的图像。另外,我无法弄清楚如何在服务器上上传多个图像并将它们全部存储起来。

以下是app.py中的上传类:

<html>
    <head><title>

    <div id="header" <h1 style="color:blue;">Upload image file</h1><div/>

    </title></head>

    <body background-color=light-blue,font-family=verdana,font-size=100%;>
        <form method="POST" enctype="multipart/form-data" action="">
        <input type="file" name="myfile"/>

     <br/> <br/><br/>
        <input type="submit"/>
        </form>
        </body>
        </html>

和我的上传表单 - upload.html:

var jqxhr = $.get( url, function() {
  alert( "success" );
})
  .done(function() {
    void(0);
  })
  .fail(function() {
    void(0);
  })
  .always(function() {
    alert( "finished" );
  });

我试着搜索类似的问题,但都是用PHP编写的,所以我尝试了与代码类似的东西,但是我无法使它工作。有什么改进代码的建议吗?

1 个答案:

答案 0 :(得分:0)

您的代码替换之前的原因是因为您硬编码保存图像的路径

fout = open(filedir + '/' + 'myfile.jpg', 'wb')

每次上传要更改的文件都是一样的,每次上传新文件或从网页输入中提取名称时都可以通过添加新名称来更正

fout = open(filedir + '/' + x.myfile.filename, 'wb');

根据python打开用于写入同名文件时将被删除 确保您上传的每个新文件与之前上传的文件名称不同