如何使用php从数据库mysql显示图像?

时间:2014-09-09 14:47:31

标签: php mysql

我喜欢从数据库中显示图像。我有这样的代码:

// 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循环时,它可以工作,但只显示一个图像。

1 个答案:

答案 0 :(得分:0)

在代码周围添加while循环并相应地修复其余代码。

  while ($img = $get_img->fetchRow()) {

    }

在你的情况下

$img = $get_img->fetchRow();

只获取一行而你没有看到其余的rcords