我是php的新手。 我想将图像添加到数据库中,并在上传新图像时显示每个图像。 每个图像都插入到数据库中。 我的问题是只有第一个图像被检索但我想显示来自数据库的所有图像。这是我的代码
<?php
ini_set('mysql.connect_timeout', 300);
ini_set('default_socket_time',300);
?>
<html>
<body>
<form method="POST" enctype="multipart/form-data">
<br>
<input type="file" name="image">
<br><br>
<input type="submit" name="submit" value="upload">
</form>
<?php
if(isset($_POST['submit']))
{
if(getimagesize($_FILES['image']['tmp_name'])==FALSE)
{
echo "Please select an image.";
}
else{
$image=addslashes($_FILES['image']['tmp_name']);
$name=addslashes($_FILES['image']['name']);
$image=file_get_contents($image);
$image=base64_encode($image);
saveimage($name,$image);
}
}
displayimage();
function saveimage($name,$image)
{
$con=mysql_connect("localhost","root","");
mysql_select_db("sanket",$con);
$qry="insert into images (name,image) value ('$name','$image')";
$result=mysql_query($qry,$con);
if($result)
{
//echo "<br>Image uploaded.";
}
else
{
//echo "<br>Image not uploaded";
}
}
function displayimage()
{
$con=mysql_connect("localhost","root","");
mysql_select_db("sanket",$con);
$qry="select * from images";
$result=mysql_query($qry,$con);
while($row = mysql_fetch_array($result))
{
echo '<img height="300" width="300" src="data:image;base64,'.$row['image'].'"';
}
mysql_close($con);
}
?>
</body>
</html>
答案 0 :(得分:2)
您没有关闭图片代码。像这样使用它
echo '<img height="300" width="300" src="data:image;base64,'.$row['image'].'" />';