4

我是 php/mysql 的新手,所以请原谅我在这里的知识水平,如果我正在做的事情已经过时,请随时指导我朝着更好的方向前进。

我正在从数据库中提取信息以填写登录页面。布局从左侧的图像和右侧的标题开始。在这里,我使用查询来检索页面标题文本:

<?php
$result = mysql_query("SELECT banner_headline FROM low_engagement WHERE thread_segment = 'a3'", $connection);
if(!$result) {
    die("Database query failed: " . mysql_error());
}
while ($row = mysql_fetch_array($result)) {
    echo $row["banner_headline"];
}
?>

这很好用,但现在我想在img alt标签内复制标题文本。在 alt 标记内复制此查询信息的最佳方法是什么?是否有任何我可以使用的缩写代码,或者最好将此代码复制到 alt 标签内并运行两次?

感谢您的任何见解!

4

2 回答 2

3

正如评论所说,您正在使用不推荐使用的函数,但要回答您的问题,您应该声明一个变量来保存从数据库中检索到的值,以便您可以随时使用它。

<?php
$result = mysql_query("SELECT banner_headline FROM low_engagement WHERE thread_segment = 'a3'", $connection);
if(!$result) {
    die("Database query failed: " . mysql_error());
}

$bannerHeadline = "";

while ($row = mysql_fetch_array($result)) {
    $bannerHeadline = $row["banner_headline"];
}

echo $bannerHeadline; //use this wherever you want

?>
于 2013-03-25T14:57:32.223 回答
2

如果不了解更多信息,很难提供帮助。您将结果泵入一个数组,您希望只返回一个结果还是多个banner_headline结果?如果您只会得到一个结果,那么您需要做的就是这样的事情:

PHP:

$result = mysql_query("
    SELECT `banner_headline`
    FROM `low_engagement`
    WHERE `thread_segment` = 'a3'", $connection) or die(mysql_error());
// This will get the zero index, meaning first result only
$alt = mysql_result($result,0,"banner_headline");

HTML:

<html>
<body>
<!--- Rest of code -->
<img src="" alt="<?php echo $alt ?>">

附带说明一下,您应该停止使用mysql-*函数,它们已被弃用。
你应该调查PDOmysqli

于 2013-03-25T14:58:30.377 回答