我有一个表单,其中有一个上传按钮和一个删除按钮。想要显示页面重新加载和页面刷新时新上传的图像
最初,图像显示在我从数据库(Mysql)中检索的窗体上。
当我上传一张新图片时,图片被上传,但之前的图片(这是最初的图片)也显示在框中。
当我刷新页面或重新加载它时,没有图像显示,我得到的是没有任何图像(即初始图像)的盒子。
我想让上传的图片一直显示直到新图片上传或删除,并删除我的初始图片。我怎么能在PHP中做到这一点? 此代码显示初始图像打开自己的状态时,直等到我没有更新:
// Connection to Database
$result1= mysql_query("SELECT images FROM $table") or die("SELECT Error".mysql_error());
$row=mysql_fetch_array($result1);
echo "<img src='data:images/jpeg;base64," .base64_encode($row['images'])."'width='100' height='100' />";
这是上传图片的代码:
$UPLOADDIR = "upload/";
if(isset($_POST['Submit']))
{
foreach ($_FILES as $key => $value)
{
$image_tmp = $value['tmp_name'];
$image = $value['name'];
$image_file = "{$UPLOADDIR}{$image}";
if(move_uploaded_file($image_tmp,$image_file))
{
mysql_select_db($database) or die("Unable to select database");
$result1= mysql_query("SELECT images FROM $table WHERE images='$image'")or die("SELECT Error: ".mysql_error());
$sql="DELETE FROM $table WHERE ID!=1";
mysql_select_db($database) or die("Unable to select database");
$ret=mysql_query($sql,$conn);
if(!$ret)
{
die(mysql_error());
}
$query = "INSERT INTO $table (images) VALUES ('$image')";
$data = mysql_query ($query)or die(mysql_error());
echo <<<HEREDOC
<div style="float:left;margin-right:10px;">
<img src="{$image_file}" alt="file not found" height="100" width="100"/>
</br>
</div>
HEREDOC;
}
else
{
echo "<h1>image file upload failed, image too big after compression</h1>";
}
}
}
else
{
?>
<form name='newad' method='post' enctype='multipart/form-data' action=''>
<table>
<tr>
<td><input type='file' name='image'></td>
</tr>
<tr>
<td><input name='Submit' type='submit' value='Upload image'></td>
</tr>
</table>
</form>
<?php
}
?>
我上传的图片在数据库中保存和上传图片显示在点击上传按钮后,但当我重新加载页面或再次打开表单时,则没有图像。
如果我们要查看哪里出错,我们将需要您的代码。 – Justice
@ ShivanRaptor-我在这里复制了我的代码。现在你可以看看它。 –
@ Justice - 我在这里复制了我的代码。现在你可以看看它。 –