我一直试图了解如何利用带有file
属性的HTML5 accept
类型,但一直在努力寻找有关使用它的最佳方式的任何细节。
目前我所能理解的是它获取了文件的名称。我如何实际获取数据?如何将其存储在服务器上?
<input type="file" id="feature" name="feature" accept="image/*">
这是提交后的PHP:
$pic = $_POST["feature"];
echo $pic; // just outputs the filename
答案 0 :(得分:1)
文件输入的POST值只会显示文件名。文件本身上传到临时文件。您可以使用move_uploaded_file()
http://php.net/manual/en/function.move-uploaded-file.php
从手册:
$tmp_name = $_FILES["feature"]["tmp_name"]; //The temporary file
$name = $_FILES["feature"]["name"]; // It's name
move_uploaded_file($tmp_name, "$uploads_dir/$name"); //Put it there
使用文件时,请使用$_FILES
而不是$_POST
重要强>
如果您不将enctype属性添加到上传表单,则无论如何都不会有效。
<form ... enctype="multipart/form-data">
答案 1 :(得分:0)
尝试
move_uploaded_file($_FILES["feature"]["tmp_name"],"yourUploadFolder/" . $_FILES["feature"]["name"]);