我正在尝试使用php rename函数将我的服务器上的文件从一个文件夹移动到另一个文件夹,但我收到此错误
警告:重命名(/home/pramiro/public_html/new/cipri/adauga/tmp/Koala.jpg,home/pramiro/public_html/new/images/memo/Koala.jpg)[function.rename]:否第13行/home/pramiro/public_html/new/cipri/adauga/categorie.php中的此类文件或目录
路径很好,文件夹存在,要复制的文件在tmp文件夹中。我可能做错了什么?
这是代码:
$filename=$_POST['poza_conv'];
$filename=substr($filename,37);
$old_path='/home/pramiro/public_html/new/cipri/adauga/tmp/'.$filename;
$new_path=' /home/pramiro/public_html/new/images/';
switch($_POST['categorie_conv'])
{
case 'memo': $filename=$new_path.'memo/'.$filename;
break;
case 'ort_sup': $filename=$new_path.'ort_sup/'.$filename;
break;
}
rename($old_path,$filename);
答案 0 :(得分:4)
这是你的错误:
$new_path=' /home/pramiro/public_html/new/images/';
/home
之前有一个前导空格,导致错误,所以它应该是:
$new_path='/home/pramiro/public_html/new/images/';
如果你仍然得到错误,那么下一个最可能的罪魁祸首就是,正如其他人所说的那样,权限,特别是你正在移动文件的目录和文件本身。
答案 1 :(得分:3)
权限可能吗? PHP脚本可能不在您自己的用户帐户下运行,如果PHP用户没有读取文件的权限,PHP将无法看到它们。
答案 2 :(得分:0)
目标路径/home/pramiro/public_html/new/images/memo/
是否确实存在?该错误表明它没有。