今天幫朋友配置一個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 )