我必须在我的网站上显示3张figcaption图片,这些图片已上传到mysql数据库(id_user(int),image(longblob),text(text)),每张图片我制作了3张图片,但我不知道如何显示超过1张图片:
SELECT
[id],hashbytes('MD5', (SELECT [id], [version], [status], [notes],[locked], [timelocked]
FROM (VALUES(NULL)) foo(bar)
FOR xml auto)) AS [Checksum]
FROM
tableA AS A
它适用于不带figcaption(文本)的一幅图像,但对于同一id_user,我还有2张图像,我想将其显示为:
$sql = "SELECT image, text FROM images WHERE id_user=?";
$stmt = mysqli_stmt_init($db_con);
if (!mysqli_stmt_prepare($stmt, $sql)){
alerts('SERVER_ERROR');
}
else {
mysqli_stmt_bind_param($stmt,"i", $_SESSION['id']);
mysqli_stmt_execute($stmt);
$result= mysqli_stmt_get_result($stmt);
$result=mysqli_fetch_array($result);
echo '<img src="data:image/jpeg;base64,'.base64_encode( $result['image'] ).'"/>';
$text1 = $row['text']; // doesn't work
}
如何更改? PS。我知道我不应该将img上传到数据库,但这只是3张图片。帮我修复它。
答案 0 :(得分:0)
使用mysqli_fetch_all()获取多行
$result=mysqli_fetch_all($result);
foreach($result as $row){
echo '<img src="data:image/jpeg;base64,'.base64_encode( $row['image'] ).'"/>';
}
答案 1 :(得分:0)
while ($row = mysqli_fetch_array($result)){
echo '<img src="data:image/jpeg;base64,'.base64_encode( $row['image'] ).'"/>';
echo '<p>'.$row['description'].'</p>';
}
问题解决了!