<div class="gmail_quote">2009/12/10 Jonas Sicking <span dir="ltr">&lt;jonas@sicking.cc&gt;</span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">2009/12/10 Ian Fette (イアンフェッティ) &lt;<a href="mailto:ifette@google.com">ifette@google.com</a>&gt;:<br>

<div><div></div><div class="h5">&gt; USE CASE:<br>
&gt; Many sites allow you to upload multiple files, often images. HTML5 allows<br>
&gt; this via &lt;input type=&quot;file&quot; multiple&gt;. This works well when your files are<br>
&gt; all in one folder, but it may often be the case that files are spread across<br>
&gt; sub-folders, and in this case you have to do multiple transactions (or<br>
&gt; multiple &lt;input type=file multiple&gt; tags, which is just awkward) to upload<br>
&gt; your files.<br>
&gt; PROPOSAL: Allow a UA to recursively select and upload a directory of files.<br>
&gt; How the UA chooses to modify the file picker dialog is outside the scope of<br>
&gt; this spec, but for the sake of argument, assume that the UA lets you pick a<br>
&gt; folder and say &quot;upload all&quot;. Allow the UA to upload the files in the folder,<br>
&gt; with the subdirectories included in the filename with a directory separator.<br>
&gt; E.g. assume I have:<br>
&gt; C:\users\ian\a\b\1.jpg<br>
&gt; C:\users\ian\a\b\2.jpg<br>
&gt; C:\users\ian\a\c\3.jpg<br>
&gt; If the user chooses &quot;a&quot;, the UA should be allowed to send all three files<br>
&gt; with filenames:<br>
&gt; &quot;a/b/1.jpg&quot;<br>
&gt; &quot;a/b/2.jpg&quot;<br>
&gt; &quot;a/c/3.jpg&quot;<br>
&gt; as it would for the existing &lt;input type=file multiple&gt; implementation, with<br>
&gt; the addition of the directories and path separators (not full path, just the<br>
&gt; directory the user chose and sub-paths.)<br>
&gt; Thoughts?<br>
<br>
</div></div>I don&#39;t think there is anything in the spec preventing you from doing<br>
this right now. The fact that only files in the same folder can be<br>
selected is a limitation in the implementation, not a limitation in<br>
the spec.<br>
<br>
The spec does require that only the leaf name, without any paths, are<br>
submitted. Is that a problem?<br></blockquote><div><br></div><div>Perhaps not a show stopper, but I think it&#39;s sub-optimal. E.g. if I am using a client application, I can point it to my &quot;My Photos&quot; directory and it can infer some album structure from how I&#39;ve organized my photos. It would be nice if a web photo app could do the same.</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<br>
I guess I&#39;d be ok with changing the spec to allow more of the path to<br>
be exposed. However that would mean that there is a mismatch between<br>
what name is submitted and what name you&#39;d get from<br>
input.files[n].name.<br>
<font color="#888888"><br></font></blockquote><div><br></div><div>I think that the notion of allowing more of the path to be exposed and reconciling that with .name is where the problem lies, and would like to figure out if we could resolve that. I think that there is a case to be made for including the paths -- e.g. if I&#39;m uploading photos to flickr, picasa, or facebook, I may have already organized them locally, there&#39;s no reason that I shouldn&#39;t be able to maintain that structure when I upload to the web application. The question is then how that gets reconciled with input.files[n].name -- I would think it preferable if .name also were allowed to contain that extra information -- currently we say &quot;The name of the file. There are numerous file name variations on different systems; this is merely the name of the file, without path information.&quot; [1]. I guess I would propose that be changed to &quot;The name of the file. There are numerous file name variations on different systems; this is merely the name of the file. If the user agent allows for files from multiple directories to be selected and included in a single FileList, path information may be included to distinguish between the files, provided that such path information SHOULD NOT include information about any path components that are common to all of the Files in the FileList.&quot; </div>
<div><br></div><div><br></div><div>Again, open to suggestions of how this could be accomplished in a better way.</div><div> </div><div>[1] <a href="http://www.w3.org/TR/FileAPI/#dfn-name">http://www.w3.org/TR/FileAPI/#dfn-name</a></div>
<div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><font color="#888888">
/ Jonas<br>
</font></blockquote></div><br>