带有变量的Php echo javascript
有一个关于php回音脚本的问题,该脚本有一个指向带有一些变量的javascript的链接。我需要知道回声的格式,这样它才能正常工作。有人能解释一下吗?我的代码贴在下面带有变量的Php echo javascript,php,javascript,echo,Php,Javascript,Echo,有一个关于php回音脚本的问题,该脚本有一个指向带有一些变量的javascript的链接。我需要知道回声的格式,这样它才能正常工作。有人能解释一下吗?我的代码贴在下面 echo "<a href='javascript: toggle('variable1', 'variable2')'><label1 for='nameEditor'>Manage</label1></a>"; echo”“; 现在,当您将鼠标悬停在链接上时,它只显示java
echo "<a href='javascript: toggle('variable1', 'variable2')'><label1 for='nameEditor'>Manage</label1></a>";
echo”“;
现在,当您将鼠标悬停在链接上时,它只显示javascript:toggle(现在我已经尝试了多种方法,但仍然无法使其正常工作。有人有任何建议吗?尝试如下:
echo "<a href=\"javascript: toggle('variable1', 'variable2')\"><label1 for='nameEditor'>Manage</label1></a>";
echo”“;
您必须转义\quotes这是因为浏览器会看到您混合了引号。请执行以下操作:
echo "<a href=\"javascript: toggle('variable1', 'variable2')\"><label1 for='nameEditor'>Manage</label1></a>";
echo”“;
如果您转义双引号(\”),您就没事了。浏览器本身看到的是“”“”(所有单引号),因此您需要在html元素属性中保留““””(双引号、单引号、单引号),与PHP无关(转义除外).假设
variable1
和variable2
是要插入javascript的PHP位,那么
echo "<a href='javascript: toggle('$variable1', '$variable2')'><label1 for='nameEditor'>Manage</label1></a>";
echo”“;
但是,请注意,如果这些变量中的任何一个包含Javascript元字符,例如一个单引号,您将使用语法错误破坏脚本(将其视为与SQL注入相同的情况)
为了确保变量的内容成为合法的Javascript,您需要执行以下操作:
<script type="text/javascript">
var variable1 = <?php echo json_encode($variable1); ?>;
var variable2 = <?php echo json_encode($variable2); ?>
</script>
<a href="javascript:toggle(variable1, variable2)...">...</a>
变量1=;
变量2=
在javascript:toggle
之后不应该有空格。谢谢你,这正是我想要的。我应该直接问我如何打破引号。非常感谢!