我正在创建一个脚本,您可以在其中上传图像。图片上传后,我想在页面上显示它,但出现此错误:
可捕获的致命错误:第27行的C:\ wamp64 \ www \ ftest \ index.php中无法将类mysqli_result的对象转换为字符串
有人可以帮助我吗?
<?php
$db=mysqli_connect("localhost","root","root","done");
if(isset($_POST['submit'])){
$fileName=$_FILES['uploadfile']['name'];
$fileTmpName=$_FILES['uploadfile']['tmp_name'];
$folder='images/';
move_uploaded_file($fileTmpName,$folder.$fileName);
$sql=mysqli_query($db,"UPDATE donee SET image = '$fileName' WHERE id=1");
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Uploading Images</title>
</head>
<body>
<?php
$db=mysqli_connect("localhost","root","root","done");
$sql="SELECT image FROM donee";
$result=mysqli_query($db,$sql);
echo "<img src='images/'+$result>";
?>
<form action="" method="POST" enctype="multipart/form-data">
<input type="file" name="uploadfile">
<input type="submit" name="submit" value="upload image">
</form>
</body>
</html>
答案 0 :(得分:0)
更改
"<img src='images/'+$result>"
到
"<img src='images/'+$result['image']>"
在body标签的php代码中。
答案 1 :(得分:0)
mysqli_query()函数返回SELECT查询的 mysqli_result对象。要从mysqli_result对象获取记录,您可以使用 mysqli_fetch_array,mysqli_fetch_row(),mysqli_fetch_assoc()等功能。
要解决您的错误,请尝试以下代码
$result=mysqli_query($db,$sql);
$data = mysqli_fetch_array($result);
echo '<img src= "images/'.$data['image'].'">';
希望这会有所帮助。