上传后更新用户配置文件图片


Update user profile picture after upload

我使用uploadifive在用户配置文件页面上传图片。用户打开带有照片和上传按钮的个人资料页面。一旦用户上传图片,它就会被调整大小并移动到化身文件夹中。图片存储为user_id.jpg。如果用户刷新页面,图片将更新。我想在不刷新页面的情况下更新图片。Uploadifive有OnUploadComlete功能,我想我只会用它来发布新图片,但这不起作用,要么它被缓存了,要么是其他原因。

这里有一些代码:

<script>
    $('#file_profile').uploadifive {
        ...
        onUploadComplete : function () {
            $('#uphoto').html('<img src="images/avatars/'+<?=$_user['id']?>+'.jpg" />');
        }
    });
</script>

<?php
    <div id="uphoto"><img src="images/avatars/'+<?=$_user['id']?>+'.jpg" /></div>
?>

有办法解决这个问题吗?

只需在链接中添加一些随机数作为参数即可重新加载图像。如果没有相同的链接,浏览器将再次加载它。

$('#uphoto').html('<img src="images/avatars/'+<?=$_user['id']?>+'.jpg?'+Math.random()+'" />');