HTML& PHP - 不显示更新的图像

时间:2016-11-08 19:28:25

标签: html image avatar

我正在使用头像进行登录服务。我还在制作裁剪服务,应该让我裁剪照片,然后将其设置为我的帐户的头像。 只需要一个表单宽度文件输入标记和提交按钮。当我点击"提交"输入,裁剪窗口打开并显示要裁剪的头像。 这是我的PHP和HTML代码。

<html>
<body>
<form method="post">
<input type="file" name="image">
<input type="submit" name="submit">
</form>
</body>
</html>

<?php 
if(isset($_POST["submit"])) {
move_uploaded_file($_FILES["image"]["tmp_name"],"photos/");
}
?>

问题是我已经创建了一个头像并且我想要更新它。当我上传图像并将其设置为头像时,裁剪窗口不会向我显示新图像,而是显示旧图像。

我做错了什么?谢谢!

2 个答案:

答案 0 :(得分:1)

首先,您必须将enctype属性设置为multipart / form-data

<form method="post" action="index.php" enctype="multipart/form-data">

,其中第二个move_uploaded_file()函数需要文件名而不是目录作为参数。

move_uploaded_file($_FILES["image"]["tmp_name"],"photos/avatar.jpg");

答案 1 :(得分:1)

  

问题是我已经创建了一个头像并且我想要更新它。当我上传图像并将其设置为头像时,裁剪窗口不会显示新图像,而是显示旧图像。

我不确定这是您的代码是否存在问题(此处显示的代码不足)或浏览器存在问题(也没有相关信息)。但是,本地许多浏览器缓存图像。也就是说,即使您在服务器上成功更新了映像,它也可能不会立即显示在客户端的浏览器中 - 因为浏览器仍在使用本地缓存版本。重新加载网页而不使用浏览器缓存来排除这种可能性。这可以在Firefox等浏览器中使用Ctrl + F5完成,其他浏览器提供类似的快捷方式。