使用 <form> 上传文件不会发送文件
uploading file with <form> doesn't sends the file
我正在尝试根据 this answer:
上传文件
<form enctype="multipart/form-data" action="http://localhost:61113/api/file/upload" method="post">
<div>
<input type="text" placeholder="No file selected" id="txtPath" />
<div id="div-btn">
Choose File
<input type="file" class="hide_file" id="browse-btn">
</div>
</div>
<button id="btnScan" type="submit">Scan</button>
</form>
但在服务器端我只得到请求的内容:
------WebKitFormBoundaryYhhj0sW5ARh7d9ZO--
而且我看不到文件的内容,我发现它似乎没有发送文件,我错过了什么?
您缺少名称属性
<input type="file" class="hide_file" id="browse-btn" name="file">
您还需要为输入文件插入属性 name
。
比通过$_FILES
获取文件数据; name
属性的值将是 $_FILES
数组中的一个键。
例如:
<input type="file" class="hide_file" id="browse-btn" name='fileUploaded'>
在服务器端:
$fileData = $_FILES['fileUploaded'];
首先你在使用AJAX吗?如果是这样,则不需要 name
属性。您可以获得具有 id
属性的文件,但如果没有,则必须使用 name
属性。
我正在尝试根据 this answer:
上传文件<form enctype="multipart/form-data" action="http://localhost:61113/api/file/upload" method="post">
<div>
<input type="text" placeholder="No file selected" id="txtPath" />
<div id="div-btn">
Choose File
<input type="file" class="hide_file" id="browse-btn">
</div>
</div>
<button id="btnScan" type="submit">Scan</button>
</form>
但在服务器端我只得到请求的内容:
------WebKitFormBoundaryYhhj0sW5ARh7d9ZO--
而且我看不到文件的内容,我发现它似乎没有发送文件,我错过了什么?
您缺少名称属性
<input type="file" class="hide_file" id="browse-btn" name="file">
您还需要为输入文件插入属性 name
。
比通过$_FILES
获取文件数据; name
属性的值将是 $_FILES
数组中的一个键。
例如:
<input type="file" class="hide_file" id="browse-btn" name='fileUploaded'>
在服务器端:
$fileData = $_FILES['fileUploaded'];
首先你在使用AJAX吗?如果是这样,则不需要 name
属性。您可以获得具有 id
属性的文件,但如果没有,则必须使用 name
属性。