Php 使用jQuery获取文件输入字段

Php 使用jQuery获取文件输入字段,php,jquery,ajax,file-upload,Php,Jquery,Ajax,File Upload,我有一个带有两个文件上传字段的表单。当您正常使用PHP处理通过HTML上传的文件时,您会得到一个$\u files数组,其中包含一系列条目,如$\u files['name'],$\u files['tmp\u name'],这些条目包含所有文件信息 我希望能够通过jQuery获得所有这些信息。只要做$('[name=“textfile1”]').val()只要我上传test.txt就可以得到C:/fakepath/test.txt。有没有办法获得实际的信息数组?我有一堆文本输入字段和文件上传字

我有一个带有两个文件上传字段的表单。当您正常使用PHP处理通过HTML上传的文件时,您会得到一个
$\u files
数组,其中包含一系列条目,如
$\u files['name']
$\u files['tmp\u name']
,这些条目包含所有文件信息

我希望能够通过jQuery获得所有这些信息。只要做
$('[name=“textfile1”]').val()
只要我上传
test.txt
就可以得到
C:/fakepath/test.txt
。有没有办法获得实际的信息数组?我有一堆文本输入字段和文件上传字段,我希望能够通过AJAX调用一次传递所有信息

    <form action="" method="post" enctype="multipart/form-data">
        <div class="input">
            <p>Upload the sitelist (.txt files only):</p>
            <input style="margin-top:0;margin-bottom:6px" type="file" name="textfile1" /><br />         
        </div>

        <div class="input">
            <p>Upload the dictionary (.txt files only):</p>
            <input style="margin-top:0;margin-bottom:6px" type="file" name="textfile2" /><br />         
        </div>
    </form> 

上载站点列表(.txt文件):


上载字典(.txt文件):



我不想在你们的游行队伍中下雨,但这是不可能的

PHP在服务器端处理事情。提交表单时生成的信息(如文件大小、文件类型、文件tmp路径等)都是在表单提交时生成的。如果这是可能的,那么表单验证就会容易得多,因为它可以在插入文件的过程中进行检查。但是,这也会带来安全风险,因为它会暴露当前用户名(通过包含用户名的文件路径)

您提到希望通过ajax推动它。无法异步发送文件。这可以通过简单地通过ajax提交表单来实现。但是,如果不先通过PHP&在服务器端生成变量,就无法获得文件信息

如果您只是想要文件名和其他通用信息(而不是PHP生成的路径),请查看HTML5文件API


我希望我能帮助你

看看HTML5文件API。这里有一个很好的教程:你可以使用HTML5的文件API和blob来读取文件,只要它是在表单中选择的。@BenFortune是的,但是我意识到,你不能像上面所说的那样读取PHP生成的临时位置。如果他可以从浏览器读取文本文件并将数据传递给AJAX,他就不需要临时位置。虽然它远没有PHP能做的那么多。@BenFortune:谢谢,我会调查的。@NetworkNerd:谢谢,我会调查HTML5文件API。本是对的——我不在乎临时工的位置(我只是以它为例);我想要的就是在不刷新页面的情况下获取文件数据。