php - move_uploaded_file() 不会替换现有图像

标签 php

我正在使用下面的脚本,因此用户可以上传他们的个人资料图片。第一次上传图像时(当该位置不存在图像时)效果很好。但是,如果图像已经存在于路径中(如果用户尝试更改个人资料图片),新图像将不会替换旧图像。我确实获得了查询的成功。

任何帮助将不胜感激!

谢谢

<?php

ini_set('display_errors',1);

 error_reporting(E_ALL);


require_once('db.php'); 


$name = $_POST['name']; 

   $dir = '../uploadImages/'; 
   $file = basename($_FILES['image']['name']);

   $uploadfile = $dir . $file;


    if(move_uploaded_file($_FILES['image']['tmp_name'], $uploadfile))
    {


        $path = $name; 
        $path .= 'Image.png';       
        $query = mysql_query("UPDATE users SET imagePath='$path' WHERE username='$name'");

        if ($query)
        {
            echo 'success'; 
        }
        else 
        {
            echo 'error'; 
        }


    }
    else 
    {
        echo mysql_error(); 
    }


 ?>

最佳答案

更好的方法是取消链接文件(如果存在)

if(file_exists('your-filename.ext')) {
    chmod('your-filename.ext',0755); //Change the file permissions if allowed
    unlink('your-filename.ext'); //remove the file
}

move_uploaded_files($_FILES['image']['tmp_name'], 'your-filename.ext');

关于php - move_uploaded_file() 不会替换现有图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9858861/

相关文章:

php - 在 MySQL 存储过程中处理非简单情况的并发

php - 在 switch 语句中重复代码

PHP页面获取MySQL查询结果

php - 此 sql 查询是否容易受到注入(inject)攻击?

MySQL 帖子的 PHP 分页

javascript - Yii2 Ajax DropDownList 更改 div 的内容

php - 使用 PHP PDO 从数据库中获取值并将输入更新为已检查

php - 如何在没有mysql_fetch_array的情况下打印mysql结果RESOURCE_ID(7)

php - 我应该发送哪些 header 才能缓存 PHP 脚本的输出?

php - 如何让一个 Laravel PHP 安装多个项目?