3

我是一个php新手,所以请放轻松。

我为 imgFld 和 imageFldName 创建了查询。我试图找出为什么我的数据库中的图像没有显示。

我有以下代码:

image_show(stripslashes($row['imgFld']),stripslashes($row['imageFldName']));

echo ' '.$records_num;

function image_show($name_image, $alt_tag) {

    if (file_exists("mywebsite.co.uk/images/'$name_image'")) {
        $img = getimagesize('mywebsite.co.uk/images/'.$name_image);
        echo '<img src="mywebsite.co.uk/images/'.$name_image.'" alt = '.$alt_tag.' border=0 align="bottom"';
        echo 'width = '. $img[0] .' height = ' .$img[1] . ' />';
    } else {
        echo 'Add an image here';
    }

}

我从我的数据库中的一列获取图像名称,每列都有一个“image.jpg”,将它与 HTML 中的 img src 脚本连接起来,以便我可以显示数据库中的图像。

但是没有显示图像,我找不到错误。似乎没有什么不妥。当我回显 $name_image 时,什么也没有产生。

4

2 回答 2

1

在这种情况下,这意味着没有任何东西填充$name_image变量。

假设网站目录是本地目录,则其原因很可能是您调用该image_show函数时的参数。它们与您指定的顺序不匹配。

第一个参数应该是名称,第二个参数应该是 alt 文本,定义如下:

function image_show($name_image, $alt_tag)

但是,您将 id 传递给$name_image并将名称传递为$alt_tag.

应该是这样的。

于 2013-01-29T12:28:21.323 回答
0

问题是file_exists仅适用于本地文件。

例如:

if (file_exists($_SERVER['DOCUMENT_ROOT'] . '/path/to/files/image.jpg')) {
...
}
于 2013-01-29T12:33:21.967 回答