我似乎有语法错误而且自己无法看到它,有人可以为我跑过来吗?
感谢。
<script>
var acurl_<?php echo $request_data['friendship_id']; ?> = "sn-include/create_bond_accept.php?friendship_id=<?php echo $request_data['friendship_id']; ?>&friend_id=<?php echo $fromuser['id']; ?>";
</script>
答案 0 :(得分:2)
因为你得到的答案旨在向你展示如何改进你的代码,但实际上并没有这样做(IMO),这是我的尝试:
<?php
$acurl = array();
$acurl[$request_data['friendship_id']] = sprintf('sn-include/create_bond_accept.php?friendship_id=%s&friend_id=%s', $request_data['friendship_id'], $fromuser['id']);
?>
<script>
var acurl = <?php echo json_encode($acurl); ?>
</script>
我不会创建动态变量名称。此代码将创建一个JS对象,其中属性是友谊ID,如:
{
'42': 'sn-include/create_bond_accept...'
}
与使用动态变量名称相比,您可以更轻松地从JavaScript访问这些URL。
答案 1 :(得分:1)
大卫,好的一面是,你没有语法错误。
如果你正在开发PHP,我会推荐两件事:
检查出来:
<?php
// prepare output
$segment = '?friendship_id=' . $request_data['friendship_id'];
$segment .= '&friend_id=' . $fromuser['id'] . '";' . "\n";
$acurl = 'var acurl_' . $request_data['friendship_id'];
$acurl .= ' = "sn-include/create_bond_accept.php';
$acurl .= $segment;
$dnurl = 'var dnurl_' . $request_data['friendship_id'];
$dnurl .= ' = "sn-include/create_bond_deny.php';
$dnurl .= $segment;
?>
<script type="text/javascript">
<?php
echo $acurl;
echo $dnurl;
?>
</script>
答案 2 :(得分:0)
请使用此处doc:
<?php
echo <<<JS
<script>
var acurl_{$request_data['friendship_id']} = "sn-include/create_bond_accept.php?friendship_id={$request_data['friendship_id']}&friend_id={$fromuser['id']}";
</script>
<script>
var dnurl_{$request_data['friendship_id']} = "sn-include/create_bond_deny.php?friendship_id={$request_data['friendship_id']}&friend_id={$fromuser['id']}";
</script>
JS;
?>
请参阅http://www.php.net/manual/en/language.types.string.php#language.types.string.syntax.heredoc