move_uploaded_file()移动文件失败?
2018-03-01 11:16
344 查看
上传图标,运行move_uploaded_file失败:
failed to open stream: No such file or directory
Unable to move
打开流失败,没有这样的文件或目录
无法移动
搬一下书本,官网上是这样说的:
move_uploaded_file — 将上传的文件移动到新位置
bool move_uploaded_file ( string $filename , string $destination )
成功时返回 TRUE。
如果 filename 不是合法的上传文件,不会出现任何操作,move_uploaded_file() 将返回 FALSE。
如果 filename 是合法的上传文件,但出于某些原因无法移动,不会出现任何操作,move_uploaded_file() 将返回FALSE。此外还会发出一条警告。
看了我好多遍,第二个,出于某些原因无法移动,某些原因是什么鬼?
由于执行这个函数返回的数据较少,成功是true,失败是false;但是失败又有很多种情况,在这里我只列几个通过推测加上查资料所得的有可能失败的原因:
1、不是使用POST方法上传的文件
2、php.ini 配置出错
3、默认暂时存储的文件夹或目标文件夹 权限不足
一、在官网中,对该函数的描述中写道,“本函数检查并确保由 filename 指定的文件是合法的上传文件(即通过
PHP 的 HTTP POST 上传机制所上传的”;
检查代码,form提交是用的post,而且输出$_FILES["logo"],结果显示正常,显然不是这种原因导致的。
is_uploaded_file()判断是否是一个上传的文件,执行了一下,返回的是true。
二、php.ini的配置中需要注意的是:
需确保文件上传是开启的
file_uploads = On
上传的文件暂时存储的目录,为了不受其他因素影响,我重新新建了一个文件夹
upload_tmp_dir = "C:\temp"
如果文件过大的话,需要对以下几项进行更改
upload_max_filesize = 2M
max_file_uploads = 20
在上传文件的时候,选择的文件为20kb以下的图片,因此排除这种原因。
三、最后,设置权限
对文件进行操作,需要有读写权限。在网上查阅了很多资料,有很多种解法,也做了多种尝试,最后认定:文件夹的权限添加上Everyone-完全控制(注意是暂时放图片的文件夹和目标文件夹两个都要设置)。具体步骤如下:文件夹--右键属性--安全--
再运行一遍,upload文件夹有上传的图片,完成~
failed to open stream: No such file or directory
Unable to move
打开流失败,没有这样的文件或目录
无法移动
搬一下书本,官网上是这样说的:
move_uploaded_file — 将上传的文件移动到新位置
bool move_uploaded_file ( string $filename , string $destination )
成功时返回 TRUE。
如果 filename 不是合法的上传文件,不会出现任何操作,move_uploaded_file() 将返回 FALSE。
如果 filename 是合法的上传文件,但出于某些原因无法移动,不会出现任何操作,move_uploaded_file() 将返回FALSE。此外还会发出一条警告。
看了我好多遍,第二个,出于某些原因无法移动,某些原因是什么鬼?
由于执行这个函数返回的数据较少,成功是true,失败是false;但是失败又有很多种情况,在这里我只列几个通过推测加上查资料所得的有可能失败的原因:
1、不是使用POST方法上传的文件
2、php.ini 配置出错
3、默认暂时存储的文件夹或目标文件夹 权限不足
一、在官网中,对该函数的描述中写道,“本函数检查并确保由 filename 指定的文件是合法的上传文件(即通过
PHP 的 HTTP POST 上传机制所上传的”;
检查代码,form提交是用的post,而且输出$_FILES["logo"],结果显示正常,显然不是这种原因导致的。
is_uploaded_file()判断是否是一个上传的文件,执行了一下,返回的是true。
二、php.ini的配置中需要注意的是:
需确保文件上传是开启的
file_uploads = On
上传的文件暂时存储的目录,为了不受其他因素影响,我重新新建了一个文件夹
upload_tmp_dir = "C:\temp"
如果文件过大的话,需要对以下几项进行更改
upload_max_filesize = 2M
max_file_uploads = 20
在上传文件的时候,选择的文件为20kb以下的图片,因此排除这种原因。
三、最后,设置权限
对文件进行操作,需要有读写权限。在网上查阅了很多资料,有很多种解法,也做了多种尝试,最后认定:文件夹的权限添加上Everyone-完全控制(注意是暂时放图片的文件夹和目标文件夹两个都要设置)。具体步骤如下:文件夹--右键属性--安全--
再运行一遍,upload文件夹有上传的图片,完成~
相关文章推荐
- 【服务器配置】php move_uploaded_file文件移动失败
- php移动文件的函数 move_uploaded_file()和copy
- php上传文件,在接受文件move_uploaded_file()的时候一直失败
- php.ini针对文件上传的修改还有move_uploaded_file()函数对中文字符上传失败的解决方法
- PHP的移动文件move_uploaded_file..竟然移动了没文件?
- php移动文件的函数 move_uploaded_file()和copy
- php移动文件的函数 move_uploaded_file()和copy
- move_uploaded_file文件上传失败 上传之后文件名是乱码
- move_uploaded_file上传 中文文件;下载文件,失败的解决方法
- php移动文件的函数 move_uploaded_file()和copy
- move_uploaded_file 中文乱码问题或上传失败问题
- PHP 上传文件 function move_uploaded_file: failed to open stream
- PHP move_uploaded_file() 函数(将上传的文件移动到新位置)
- PHP学习之路之PHP文件上传需要考虑的问题以及解决方法($_FILES,$_SERVER,substr,strrpos,file_exists,move_uploaded_file,is_uploaded_file,mkdir)
- move_uploaded_file 失败问题
- 使用java.io.File的renameTo方法移动文件失败的问题
- 解决php上传文件过程中Warning move_uploaded_file, failed to open stream的一种思路
- java移动/赋值文件 copy/move file
- yii上传文件move_uploaded_file和rename函数报错
- lamp使用php处理上传文件,调用move_uploaded_file函数遇到目录写权限问题及解决过程