我有这段代码:
if ($topic['user']==$_SESSION['display'])
{
echo '<div class="bottomright"><a href="?id=<?php echo $topic_id; ?>&part=5"><img src="../assets/icons/Comments-edit.png" /></a><a href="?id=<?php echo $topic_id; ?>&part=6"><img src="../assets/icons/Lock.png" /></a><a href="?id=<?php echo $topic_id; ?>&part=7"><img src="../assets/icons/Trash.png" /></a></div>';
}
当我在图像上方移动时,链接显示为:
?id=%3C?php%20echo%20$topic_id;%20?%3E&part=3
而不是:
?id=3&part=3
为什么这不起作用?
我试过了:
if ($topic['user']==$_SESSION['display'])
{
echo '<div class="bottomright"><a href="?id=$topic_id&part=5"><img src="../assets/icons/Comments-edit.png" /></a><a href="?id=$topic_id&part=6"><img src="../assets/icons/Lock.png" /></a><a href="?id=$topic_id&part=7"><img src="../assets/icons/Trash.png" /></a></div>';
}
现在我明白了:
?id=$topic_id&part=3
答案 0 :(得分:2)
您的代码已经在PHP代码中,您不必在链接的参数中添加额外的<?php
。
echo '<div class="bottomright"><a href="'. $topic_id .'&part=5"...
只需终止字符串并将相关变量连接到字符串中。
这是一个非常简单的例子:
<?php
$user_name = "Anthony";
echo "Hello ". $user_name ."! How are you?";
//----------^ terminating the string
?>
这将导致:
你好安东尼!你好吗?
Here是处理字符串连接的相关文档。
答案 1 :(得分:1)
您正在回显一个php语句,它不会被解释,而是按原样显示。相反,你应该连接字符串,如下所示:
if ($topic['user']==$_SESSION['display'])
{
echo '<div class="bottomright"><a href="?id='
. $topic_id
. '&part=5"><img src="../assets/icons/Comments-edit.png" /></a><a href="?id='
. $topic_id
. '&part=6"><img src="../assets/icons/Lock.png" /></a><a href="?id='
. $topic_id
. '&part=7"><img src="../assets/icons/Trash.png" /></a></div>';
}
答案 2 :(得分:0)
您不需要在PHP语句中“回显”。只需连接字符串(此处为id),如下所示:
if ($topic['user']==$_SESSION['display']){ echo '<div class="bottomright"><a href="?id='.$topic_id.'&part=5"><img src="../assets/icons/Comments-edit.png" /></a><a href="?id='.$topic_id.'&part=6"><img src="../assets/icons/Lock.png" /></a><a href="?id='.$topic_id.'&part=7"><img src="../assets/icons/Trash.png" /></a></div>'; }
另外,你应该使用“&amp; amp;” (没有那个空格,不知道如何格式化这里)而不是“&amp;”在您的链接中。