我对显示数据库中的图像很感兴趣。我有这样的代码:
// Get image
$image = "SELECT * FROM ".TABLE_PREFIX."mod_img WHERE section_id = '$section_id' ORDER BY number ASC";
$get_img = $database->query($image);
$img = $get_img->fetchRow();
//build images
function tampil($str){
$arr = explode('-',trim($str));
return $arr[0];
}
$imglist = '';
$curdir = $section_id."/";
if($img) {
foreach($img as $im){
$imglist .= '<div style="float:left; align="center";"><img style="margin:03px;" src="'.$baseurl.$curdir.'thumbs/'.$im['name'].'" alt="'.$baseurl.$curdir.$im['name'].'" title="'.$baseurl.$curdir.$im['number'].'"><figcaption><center>IMG '.$im['number'].'</center></figcaption></div>';
}
}
else{
$imglist .= '<i>No image yet</i>';
}
但是它不起作用并且有警告:
Warning: Illegal string offset 'name' in C:\xampp\htdocs\wb\modules\pagina_toevoegen\modify.php on line 81
..................
..................
请帮助我,抱歉我是编程新手。
当我没有使用 foreach
循环时,它可以工作,但只显示一张图像。
最佳答案
在代码周围添加 while 循环并相应地修复其余代码。
while ($img = $get_img->fetchRow()) {
}
就你的情况
$img = $get_img->fetchRow();
仅获取一行,您看不到其余的记录
关于php - 如何使用php显示mysql数据库中的图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25747618/