PHP echo返回空值

时间:2017-11-09 13:54:47

标签: php

所以我试图使用从函数中获取的数据进行链接,但它一直给我一个空白的ID值。这是我正在尝试打印的代码

 <h3 style="text-align: center;">Seller: <?php $sellername = 
getNameFromListingID(); $id = getIDByUsername($sellername); echo "<a href=\"seller.php?id=\"".$id.">".$sellername."</a>";?></h3>

这些功能正常工作,我已经尝试过打印这两种功能并且可以正常工作。它们位于一个名为getinfo.php的文件中,我有

Include 'getinfo.php';

在我的文档顶部。

名称的链接有效,但我总是得到seller.php?id =,之后没有值。任何线索为什么?

2 个答案:

答案 0 :(得分:2)

你太早结束了href属性。

<a href=\"seller.php?id=".$id."\">

这会将$id放在href属性中,它属于它。

答案 1 :(得分:0)

使用single quotes in PHP,这是一个很好的做法,它也可以让PHP处理得更快(微不足道)。为什么?因为,当你使用双引号时,你告诉PHP你的字符串包含可能需要评估的变量。

所以说实话,你甚至不需要这里的变量引号。

echo "<a href=\"seller.php?id=$id\">$sellername</a>";

但是这样做会遵循最佳做法 现在您不需要转义HTML使用的\"双引号。

echo '<a href="seller.php?id='.$id.'">'.$sellername.'</a>';

警告: 在您输出到HTML标记中的任何内容中转义特殊字符也是一个非常好的主意。这避免了XSS漏洞的可能性。请参阅:htmlspecialchars()

echo '<a href="seller.php?id='.htmlspecialchars($id).'">'.htmlspecialchars($sellername).'</a>';