5

我试图通过从 sql 表中获取它们的文件路径来显示图像,但我遇到了很多麻烦。

这是发生了什么:

$image"itemimg/hyuna.png"是一个包含作为图像路径的文本的变量。

$image = 'itemimg/hyuna.png';

我以为我可以像这样在 php 块之外显示图像:

<img src= "<? $image ?>" alt="test"/>

但由于某种原因,这不起作用。

所以我想也许它无法读取 php 块之外的变量(我是初学者),所以为了测试我做了:

<h1> "<? $image ?>" </h1>

它显示itemimg/hyuna.png为 h1 横幅。

这意味着它正在访问变量罚款。

所以我想也许路径是错误的。所以我尝试了:

<img src= "itemimg/hyuna.png" alt="test"/>

这完美地显示了图像。

所以现在我一直在摸不着头脑,为什么第一段代码只显示"test"来自"alt="

额外的问题: 如何将 sql 单元中的值分配给变量?我尝试了以下没有运气:

$q = "select * from item where id=$id";
$results = mysql_query($q);
$row = mysql_fetch_array($results, MYSQL_ASSOC);
$image = ".$row['image'].";

item是一个带有列的表:image其中包含图像的文件路径

4

4 回答 4

5

首先,你不应该使用 PHP Shorttags。

当您使用 PHP Shorttags 时,您必须说:

<img src="<?=$image ?>" alt="test" />

但我会鼓励像这样从变量中转义内容:

<img src="<?php echo htmlspecialchars($image); ?>" alt="test" />

你的额外问题:

这应该会导致语法错误,因为无法解析字符串,只需使用$image = $row['image'];

于 2013-10-24T10:42:59.750 回答
3

尝试这个

<img src= "<?php echo $image ?>" alt="test"/>

于 2013-10-24T10:41:03.350 回答
1

尝试

<img src= "<?= $image ?>" alt="test"/>

或者

<img src= "<? echo $image; ?>" alt="test"/>
于 2013-10-24T10:41:18.320 回答
-2

尝试这个

<img src= "<?php echo $image ?>" alt="test"/>
于 2014-05-26T13:36:20.273 回答