我试图弄清楚文件上传系统如何在 PHP 中工作。我的代码是:
if(isset($_FILES['profile_pic'])){
$allowed_ext= array('jpg','jpeg','png','gif');
$file_name = $_FILES['profile_pic']['name'];
$file_ext = strtolower(end (explode('.',$file_name)));
$file_size = $_FILES['profile_pic']['size'];
$file_tmp = $_FILES['profile_pic']['tmp_name'];
if(in_array($file_ext, $allowed_ext) === false || $file_size > 2000000){
$display_block = 'display:block !important';
$pic_errors ='<p>* File format JPG, JPEG, GIF or PNG</p> <p>* Smaller 1Mb</p>';
} else {
move_uploaded_file($file_tmp, '/members/');
echo 'uploaded..';
}
}//if(isset($_FILES['profile_pic']))
有了权限,一切似乎都很好。
我得到的错误是:
警告:move_uploaded_file(/members/) [function.move-uploaded-file]:无法打开流:是第 116 行 /home/a6671212/public_html/settings.php 中的目录
如何修复此错误?
谢谢大家..
据我了解,我有两个问题..
正如@Prisoner 所写.. move_uploaded_file($file_tmp, '/members/'); - 我没有在 /members/ 后面写文件名
正如@Ketan Patel 所写,
如果我可以这样说,该功能应该更改为另一种格式。
move_uploaded_file($file_tmp, "/members/$file_name"); - 双引号...
有效!!!!!!!!谢谢你!!!