返回空白值的PHP回显

返回空白值的PHP回显,php,Php,所以我尝试使用从函数中获得的数据进行链接,但它一直给我一个空白的ID值 <h3 style="text-align: center;">Seller: <?php $sellername = getNameFromListingID(); $id = getIDByUsername($sellername); echo "<a href=\"seller.php?id=\"".$id.">".$sellername."</a>";?></

所以我尝试使用从函数中获得的数据进行链接,但它一直给我一个空白的ID值

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


名称为的链接可以工作,但我总是得到seller.php?id=,后面没有值。关于原因有什么线索吗?

您过早地结束了href属性

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


这将把
$id
放在href属性中,即它所属的位置。

您过早地结束了href属性

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

这将把
$id
放在href属性中,该属性就在它所属的位置。

使用,这是一个很好的实践,PHP处理速度也稍微快了一点。为什么?因为,当您使用双引号时,您告诉PHP您的字符串包含可能需要计算的变量

所以事实上,这里的变量甚至不需要引号

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

注意:在输出到HTML标记的任何内容中转义特殊字符也是一个非常好的主意。这避免了XSS漏洞的可能性。见:

echo';
使用,这是一个很好的实践,PHP的处理速度也稍微快一点。为什么?因为,当您使用双引号时,您告诉PHP您的字符串包含可能需要计算的变量

所以事实上,这里的变量甚至不需要引号

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

注意:在输出到HTML标记的任何内容中转义特殊字符也是一个非常好的主意。这避免了XSS漏洞的可能性。见:

echo';

这段代码呈现的确切HTML是什么?我修复了它,结果发现$id变量位于错误的位置。谢谢。这段代码呈现的确切HTML是什么?我修复了它,结果发现$id变量位于错误的位置。谢谢,非常感谢!我不知道你可以把变量放在引号里,我想你必须把它们放在各自独立的部分。我会尽快把你的答案选为最佳答案。变量在报价之外(这就是
“$id.”
正在做的)。是后来的转义报价导致了问题。如果我们说$id=50,那么前面的最终结果看起来像
。只有输出引号中的部分才构成链接。移动转义引号使其位于标记的末尾意味着它将包含$id值。非常感谢!我不知道你可以把变量放在引号里,我想你必须把它们放在各自独立的部分。我会尽快把你的答案选为最佳答案。变量在报价之外(这就是
“$id.”
正在做的)。是后来的转义报价导致了问题。如果我们说$id=50,那么前面的最终结果看起来像
。只有输出引号中的部分才构成链接。移动转义引号使其位于标记的末尾意味着它将包含$id值。
echo '<a href="seller.php?id='.htmlspecialchars($id).'">'.htmlspecialchars($sellername).'</a>';