需求: 假设用户在批量上传图片时, 一次提交了20张图片请求, 但当浏览器上传到第10张的时候崩溃了, 导致浏览器关闭, 用户下次在访问页面的时候, 能继续传剩下的10张图片,而不需要重新选择文件.. 求高手指点解决思路

解决方案 »

  1.   

    1、发起上传是浏览器的事情,与php无关
    2、浏览器中缓存未完成的工作,可以使用cookie。也可将信息提交到服务器,有服务器代为保存,下次取回
    3、无论如何,发起上传必须是人工的,不能在web方式下用脚本完成。
      

  2.   


    谢谢2楼的回答, 用cookie保存什么信息? 文件路径? 可是拿不到文件的路径呐. 你用cookie保存什么信息呢?
      

  3.   

    搞一个临时文件吧,usr1_tmp.txt
    里面样式大概这样
    {
    'user':'USER1',
    'file':{1:'pic1.jpg',2:'pic2.jpg',3:'pic3.jpg'},
    'finished':{1:'pic1.jpg'}
    }
    完成一张改一下finished,全步完成删掉这个tmp文件,对于大文件,要记录断点指针位置,也有将此信息写在文件头尾部的,结束时清除,存cookie设置好有效期,也是一样效果
      

  4.   

    在根目录搞个tmp文件夹,所有人的都放里,反正正常操作后会删除的,是把用户信息复制一份,不是剪切,用户正常操作,但是完成一步要来文件里记录一下。迅雷下载就是两个文件,完成后删去一个,道理就这么个道理
    店里来两人吃饭,吃前记下名字,结账后把单打勾扔掉,下次再来时,先看有他账单没,有的话,还钱!
      

  5.   


    很感谢franzhong的指点, 我还有点不明白的地方是, 用户自定义上传的文件, 这文件的路径你如何怎么保存进临时文件里, 再则就是, 即便是保存下了文件的路径, 浏览器关闭后再次开启, 能继续上传吗? 
      

  6.   

    本地用cookie,把json存在本地,下次直接弹出,"你的abc,jpg未上传成功,要继续吗"
    关于服务端,主要是记录断点,web一次把json数据传过去也是可以的,你要写api的
    就搞cookie就可以了