前言
以前了解过Django框架的文件上传
感觉PHP和Django做比较
文件上传这块真的做的是太简单了
字面意义上的简单、代码简单、学习简单
前端的表单
<!-- The data encoding type, enctype, MUST be specified as below --> <form enctype="multipart/form-data" action="__URL__" method="POST"> <!-- MAX_FILE_SIZE must precede the file input field --> <input type="hidden" name="MAX_FILE_SIZE" value="30000" /> <!-- Name of input element determines name in $_FILES array --> Send this file: <input name="userfile" type="file" /> <input type="submit" value="Send File" /> </form>
注意action那里修改为正确的后端上传url地址
后端的接收
<?php
$uploaddir = '/var/www/uploads/';
$uploadfile = $uploaddir . basename($_FILES['userfile']['name']);
echo '<pre>';
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
echo "File is valid, and was successfully uploaded.\n";
} else {
echo "Possible file upload attack!\n";
}
echo 'Here is some more debugging info:';
print_r($_FILES);
print "</pre>";
?>
其他注意的地方
注:这里我使用的时候,发现很多次上传不成功
报错时错误码为2,文件type为空,temp路径也为空
开始以为是不支持一些文件格式
后来才发现MAX_FILE_SIZE这个字段设置太小
文件大小超过这个值就无法上传了
文章评论