move_uploaded_file not moving



我正在后台处理上传的图像,这样你就可以更改前面的图像。问题是我的上传脚本没有返回任何错误,但也没有移动文件。我希望我的脚本将新文件上传到那个位置,并替换任何具有相同名称的文件,但我必须先让移动工作。

我哪里错了?

==================================================================================编辑:我在路径上加了斜线。但是它仍然不会上传我的图片。代码如下:

$target_path = "../../site/images/user_images/";
$image_name = $_POST['filename'].".".pathinfo($_FILES['file']['name'],PATHINFO_EXTENSION);
if(move_uploaded_file($_FILES['file']['tmp_name'], $target_path.$image_name)) {
    echo "<meta http-equiv='refresh' content='0;URL=images.php?saved=true' />";
} else {
    echo "Error";
}
$target_path = "../../site/images/user_images/";
                                             ^ 

这里您忘记了/,它告诉它是您必须上传文件的目录。

所以$target_path.$image_name会变成这个

../../site/images/user_images/newfile.png

否则,您的代码将产生此输出

../../site/images/user_imagesnewfile.png

您缺少尾部斜杠。您需要:

$target_path = "../../site/images/user_images/";

将slashe添加到路径变量的末尾,然后重试。

$target_path = "../../site/images/user_images/";

您在表单中添加了enctype吗?

<form name="form1" id="form1" method="post" action="" enctype="multipart/form-data">
</form>
$target_path = $_SERVER['DOCUMENt_ROOT']."your/folder/relat";

路径应该是完整的路径,然后为文件夹分配适当的权限

最新更新