0

首先,我想知道如何仅使用图像的路径在 PHP 中显示图像?不使用 BLOB。

我的数据库中有一个表格,它是以这种方式布局的..

列:i1 i2 i3 i4 i5 i6 i7 i8

每个字段都有一个值或为空。

我基本上想根据 i1 i2 i3 i4 中的内容显示 i5 i6 i7 i8 的值。

例如:

i1=a i2=b i3=e i4=q i5=g i6=l i7= i8=

对于这种情况,我希望显示 g 和 l。但我希望将值存储在数组中。

我试着做:

$list = array(g,l)
$query = " SELECT i5, i6, i7, i8  FROM Table WHERE i1 AND i2 AND i3 AND i4 IN ('$list') ";
$s = mysql_query($query);
while($data = mysql_fetch_array($s)){
    $r_1 = $data['i5'];
    $r_2 = $data['i6'];
    $r_3 = $data['i7'];
    $r_4 = $data['i8'];         
}
echo "$r_1  $r_2 $r_3  $r_4"`

即使我这样做也不起作用$list[0]

帮助将不胜感激。谢谢

4

2 回答 2

2

首先,我想知道如何仅使用图像的路径在 PHP 中显示图像?不使用 BLOB。

您不在 PhP 中显示图像,而是在 html 中显示它。如果您有路径,那么只需在 html 中生成一个 img 标记,并将 src 属性设置为 path :

<img src="whatever your path is" alt="My Image" />

Blob 用于直接在数据库中存储图像(实际上是大的二进制数据、图像、电影等)。

于 2013-03-26T16:35:43.273 回答
0
$s = mysql_query($query);
while($data = mysql_fetch_array($s)){

您没有检查查询期间是否有错误。从文档中mysql_query

对于 SELECT、SHOW、DESCRIBE、EXPLAIN 和其他返回结果集的语句,mysql_query() 成功时返回资源,错误时返回 FALSE。

这样做:

$s = mysql_query($query);
if($s === FALSE) {
    // Do something to handle the error here, possibly calling die()
}

下一个问题,如果没有结果怎么办?你的变量都是空的。您可以对此进行测试:

if(empty($r_1)) {
    echo "Oops, I guess we didn't get any results";
    // die()?
}

如果我们得到多行结果怎么办?我不确定你的程序应该如何处理这个问题。

最后,我认为您的 SQL 查询并没有像您认为的那样做:

SELECT i5, i6, i7, i8  FROM Table WHERE i1 AND i2 AND i3 AND i4 IN ('$list')

这将为您提供i5, i6, i7, 和i8wheni1为 true, i2is true, i3is true, and i4is equal to the string $list。如果要查找所有结果都在列表中,则需要执行多个语句,并且需要作为列表而不是字符串IN传递。$list您可以看到有关如何构造查询字符串以将列表传递给 MySQL 的答案。

另请注意,这些mysql_*函数已被弃用,您应该真正学习使用 PDO 或这些mysqli_*函数。这不会花费太多时间,并且使用它们更容易安全地访问数据库

于 2013-03-26T17:28:00.313 回答