悬停文本仅显示第一个单词

时间:2014-11-09 02:31:15

标签: php html mysql

当我将鼠标悬停在其他文本上时,我正在尝试显示弹出文本。弹出文本仅显示第一个单词。我是php的新手,所以我希望这不是一个愚蠢的问题,但我在这里做错了什么?

while ($row = mysql_fetch_array($data)) {
    $description = $row[2];
    echo $description;  //output:  "Get an Automatic..."
    echo "<a title=$description>";  //Hover output:  "Get"
    echo "blah blah blah";
    echo "</a>;
}

2 个答案:

答案 0 :(得分:4)

你需要用引号包装它们:

echo "<a title='$description'>"

旁注:你可能会得到这样的字符串也很重要:

Get an automatic test's

这肯定会搞砸引用,并提前终止,在这种情况下添加htmlspecialchars()可能会更好:

$description = htmlspecialchars($row[2], ENT_QUOTES);

答案 1 :(得分:2)

这应该适合你:

while ($row = mysql_fetch_array($data)) {
    $description = $row[2];
    echo $description;  //output:  "Get an Automatic..."
    $firstWord = explode(' ',trim($description));
    echo "<a title='$firstWord[0]'>";  //Hover output:  "Get"
    echo "blah blah blah";
    echo "</a>";
}

BTW:你必须在标题attribut中扭曲字符串,你忘了“最后的引用”

评论后更新:

是的,可能是因为你没有扭曲title属性,而你忘记了“最后的引用”

所以改成它:

...
echo "<a title='$description'>";
...
echo "</a>";