今天帮朋友配置一个PHP的程序,里面有一些上传图片的功能,统统的不能用了,上传的时候提示没有此文件或者文件格式不正确。
icech查看了一下代码,发现是在
!move_uploaded_file($_FILES['upphoto']['tmp_name']
这里返回的是false值
查看了半天终于解决了这个问题。下面icech说说自己解决的思路。
1、临时文件权限的问题
因为朋友的服务器是IIS里面配置的PHP,所以要考虑到权限的问题。
找到PHP安装目录中php.ini文件,查找upload_tmp_dir,里面的值为“"C:\temp”。配置这个目录的权限,就是将IIS的匿名访问用户的可写和修改权限付给这个目录。
2、返回路径的问题
还是php.ini文件的配置问题,找到magic_quotes_gpc一项,如果是Off就改成On。因为打开了magic_quotes_gpc参数的PHP环境会自动对GET/POST/Cookie添加addslashes效果。
基本检查这两点就可以了,因为icech也是初学PHP,所以不能提供更高深的解释:-) 我们共同研究吧。
bool is_uploaded_file ( string $filename )