人们可以看到我的网站正常,但Google收到500错误。我打开了所有错误报告,我得到了:意外的'{',期待','或';'在第6行。
我已经多次过去,找不到任何错误。希望有人能提供帮助。 如果我取第5行$(\'#js_terms_of_use \')。点击(function()并删除两个''第6行的错误消失了,但我逃脱了它们所以我不明白这是什么问题这是代码:
echo '
<script type=\"text/javascript\">
$Behavior.termsAndPrivacy = function()
{
$(\'#js_terms_of_use\').click(function()
{
'; ?>
tb_show('<?php echo extras::getPhrase('user.terms_of_use', array('extras_squote' => true)); ?>', $.ajaxBox('page.view', 'height=410&width=600&title=terms'));
<?php echo '
return false;
});
$(\'#js_privacy_policy\').click(function()
{
'; ?>
tb_show('<?php echo extras::getPhrase('user.privacy_policy', array('extras_squote' => true)); ?>', $.ajaxBox('page.view', 'height=410&width=600&title=policy'));
<?php echo '
return false;
});
}
</script>
';
答案 0 :(得分:3)
默认情况下会回显<?php ?>
个标记之外的任何内容。使用这个对你有利。多行单引号字符串是一个坏主意。这是尝试清理代码:
<?php
$TOU = extras::getPhrase('user.terms_of_use', array('extras_squote' => true));
$priv = extras::getPhrase('user.privacy_policy', array('extras_squote' => true));
?>
<script type="text/javascript">
$Behavior.termsAndPrivacy = function()
{
$('#js_terms_of_use').click(function()
{
tb_show('<?php echo $TOU ?>', $.ajaxBox('page.view', 'height=410&width=600&title=terms'));
return false;
});
$('#js_privacy_policy').click(function()
{
tb_show('<?php echo $priv ?>', $.ajaxBox('page.view', 'height=410&width=600&title=policy'));
return false;
});
}
</script>
答案 1 :(得分:1)
如果您确实需要在PHP中从单个回显输出多行,请使用heredoc语法(如果可用,请使用newdoc语法)。如需复习,请查看php.net