如何在php中回显斜杠?

如何在php中回显斜杠?,php,html,echo,slash,Php,Html,Echo,Slash,每次我检查这段代码的HTML输出时,斜杠都不包括在内。因此,背景图像失败。我甚至把它通过一个html到php的转换器。我迷路了;请帮忙 while($row = mysql_fetch_array($data)) { //Echo Theme Template on pages echo "<div style='background-image:url('../uploads/avi/{$row['avi']}')></div>"; echo

每次我检查这段代码的HTML输出时,斜杠都不包括在内。因此,背景图像失败。我甚至把它通过一个html到php的转换器。我迷路了;请帮忙

while($row = mysql_fetch_array($data))
{
    //Echo Theme Template on pages  
    echo "<div style='background-image:url('../uploads/avi/{$row['avi']}')></div>";
    echo "<div class='myname'>{$me}</div>"; 
}
while($row=mysql\u fetch\u数组($data))
{
//页面上的回声主题模板

echo“由于
style
属性使用了内部
,因此需要在内部使用双引号

echo '<div style="background-image:url(\'../uploads/avi/' . $row['avi'] . "')></div>";

echo'由于
style
属性使用了内部
,因此需要在内部使用双引号

echo '<div style="background-image:url(\'../uploads/avi/' . $row['avi'] . "')></div>";

echo'最简单的答案是,您的样式属性上有一个未关闭的
'

echo”“;

^这里

但这不能按原样工作..所以你应该像这样调整引号:

echo "<div style='background-image:url(\"../uploads/avi/{$row['avi']}\");'></div>";
echo”“;
你可以看到破碎的回声

编辑的在这里


我通过代码板上的htmlspecialchars传递它,只是为了让您可以将其视为字符串,并避免仅出于查看目的而呈现为HTML。

最简单的答案是,您的样式属性上有一个未关闭的
'

echo”“;

^这里

但这不能按原样工作..所以你应该像这样调整引号:

echo "<div style='background-image:url(\"../uploads/avi/{$row['avi']}\");'></div>";
echo”“;
你可以看到破碎的回声

编辑的在这里


我通过代码板上的htmlspecialchars传递它,只是为了让您可以将其视为字符串,并避免仅用于查看目的而呈现为HTML。

您在这里做错了两件事。您从未关闭样式标记的最终引号,并且对style=''和url('')使用单引号相互抵消

我建议对HTML标记始终使用双引号

while($row = mysql_fetch_array($data))
//Echo Theme Template on pages
{
    echo "<div style=\"background-image:url('../uploads/avi/{$row['avi']}');\"></div>";
    echo "<div class='myname'>{$me}</div>";
}
while($row=mysql\u fetch\u数组($data))
//页面上的回声主题模板
{
回声“;
回声“{$me}”;
}

另一个要考虑的问题,总是说“查看源代码”,而不是用Fixbug或其他工具“检查”。你没有看到打印出来的URL的原因是因为新的浏览器是“Smart”。“并尝试修复DOM错误。使用Firebug或类似工具检查源代码将显示浏览器实际解释的内容。查看源代码将显示实际发送到浏览器的内容。

您在这里做错了两件事。您从未关闭样式标记的最终引号,并且对样式=“”和url(“”)使用单引号。”相互抵消

我建议对HTML标记始终使用双引号

while($row = mysql_fetch_array($data))
//Echo Theme Template on pages
{
    echo "<div style=\"background-image:url('../uploads/avi/{$row['avi']}');\"></div>";
    echo "<div class='myname'>{$me}</div>";
}
while($row=mysql\u fetch\u数组($data))
//页面上的回声主题模板
{
回声“;
回声“{$me}”;
}

另一个要考虑的问题,总是说“查看源代码”,而不是用萤火虫或其他工具“检查”。你没有看到打印出来的URL的原因是因为新的浏览器是“聪明的”。并尝试修复DOM错误。使用Firebug或类似工具检查源代码将显示浏览器实际解释的内容。查看源代码将显示实际发送到浏览器的内容。

您是指前斜杠,
/
?因为您发布的任何内容都不会以任何方式负责删除前斜杠。首先明显的问题:你确定它们一开始就保存到数据库中了吗?
/
不需要是escape afaik,除非它是html的一部分而不是属性。@tim banon记得选择最好的答案以帮助未来的用户轻松找到它们。你是说前斜杠,
/
?因为你发布的内容都不在其中任何删除前斜杠的方法。第一个明显的问题:你确定它们首先保存到数据库中吗?
/
不需要是escape afaik,除非它是html的一部分,而不是属性。@tim banon记得选择最佳答案,以帮助未来用户轻松找到它们。谢谢;但是,我解决了它我也一样。我在url()中删除了结束语。请将其作为未来访问者的答案发布,并改进您的问题。谢谢;但是,我也很快解决了它。我在url()中删除了结束语。请将其作为未来访问者的答案发布,并改进您的问题。您是对的,但问题已更正($row=mysql\u-fetch\u-array($data)){echo'你是对的,但是错误被纠正了,$row=mysql\u-fetch\u-array($data)){echo'