在html / php语句中正确嵌套撇号/引号

时间:2013-05-19 18:56:11

标签: php html

因此我试图让用户从列表中选择一个文件,然后从服务器中删除该文件。 我知道我在这里忽略了很多安全问题,但我真的需要让它的基本版本现在正常工作。 因此,在这里跟进一些其他线程的是你选择要删除的文件的链接:

echo '<a href="delete.php?file=ebooks/'.$name.'" onclick="return confirm(\'Are you sure?\')">Delete</a>';

我的问题是,在我将链接的变量$ name添加到我的嵌套引号时,转义它们不起作用,因为它只是将它呈现为字符串“$ name”而不是变量。 任何人都可以给我或帮助我看看写这个陈述的正确方法是什么? 感谢

2 个答案:

答案 0 :(得分:1)

在urlencode()中包装$ name:

echo '<a href="delete.php?file=ebooks/'.urlencode($name).'" onclick="return confirm(\'Are you sure?\')">Delete</a>';

答案 1 :(得分:0)

我喜欢将 Heredoc syntax 用于复杂字符串(例如HTML):

echo <<<HTML
<a href="delete.php?file=ebooks/{$name}" onclick="return confirm('Are you sure?')">
    Delete
</a>
HTML;

无需转义引号,无需为变量结束字符串。简单而且看起来很好。