【问题标题】:PHP images from function来自函数的 PHP 图像
【发布时间】:2013-01-29 12:27:33
【问题描述】:

我是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 时,什么也没有产生。

【问题讨论】:

  • 不应该在图片位置前加http://吗? :)
  • 图片位置是本地静态文件夹

标签: php mysql html


【解决方案1】:

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

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

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

function image_show($name_image, $alt_tag)

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

应该是这样的。

【讨论】:

    【解决方案2】:

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

    例如:

    if (file_exists($_SERVER['DOCUMENT_ROOT'] . '/path/to/files/image.jpg')) {
    ...
    }
    

    【讨论】:

    • 图片的目录是本地的..我给它起了一个假名字来张贴在这里。该目录不是 mywebsite.co.uk
    • 另一个错字?呵呵...尝试使用它,包括documen_root。赞!
    猜你喜欢
    • 1970-01-01
    • 2019-07-22
    • 2013-02-18
    • 2018-04-02
    • 1970-01-01
    • 2020-10-26
    • 2014-10-06
    • 2011-10-17
    • 2016-05-03
    相关资源
    最近更新 更多