PHP如何通过链接传递变量到下一个PHP文件


PHP How to pass variables through a link to the next php file

echo "<td>" . 
    "<a href='approve_mem.php?id=$row['member_id']'>Approve</a>" . " " . 
    '<a href="disapprove_mem.php?id=$row[member_id]">Disapprove</a>' .
"</td>";

这是我的代码,但id的值没有被传递,而是像id=$row['member_id']一样传递,当我回显id变量时它被打印成$row['member_id']

与其在PHP中构建HTML字符串,我建议您只在需要时切换到PHP上下文,例如

<td>
    <a href="approve_mem.php?id=<?php echo htmlspecialchars($row['member_id']) ?>">Approve</a>
    <a href="disapprove_mem.php?id=<?php echo htmlspecialchars($row['member_id']) ?>">Disapprove</a>
</td>

试试这个:

echo "<td>" . 
"<a href='approve_mem.php?id=".$row['member_id']."'>Approve</a>" . " " . 
'<a href="disapprove_mem.php?id='.$row['member_id'].'">Disapprove</a>' ."</td>";

您需要将其更改为:-

echo "<td>" . 
    "<a href='approve_mem.php?id={$row['member_id']}'>Approve</a>" . " " . 
    "<a href='disapprove_mem.php?id={$row['member_id']}'>Disapprove</a>" .
"</td>";  

注意第二行中花括号的使用和引号的变化。在第二次使用$row['member_id']时也没有引用member_id

还要注意上面大衮的评论

我猜这是数据库查询的一部分。在这个实例中,您必须将数据与字符串分开。有两种写法:

 <td>
   <a href='approve_mem.php?id=<?php echo $row['member_id']; ?>'>Approve</a> <a href="disapprove_mem.php?id=<?php echo $row['member_id']; ?>">Disapprove</a>
 </td>

-------------或-------------

 echo "<td><a href='approve_mem.php?id=".$row['member_id']."'>Approve</a> <a href='disapprove_mem.php?id=".$row['member_id']."'>Disapprove</a></td>";

改成:

  echo "<td><a href='"approve_mem.php?id=".$row['member_id']."'">Approve</a>
  <a href='"disapprove_mem.php?id=".$row['member_id']."'">Disapprove</a></td>";

 <td>
       <a href='approve_mem.php?id=<?=$row['member_id']?>'>Approve</a>
       <a href='disapprove_mem.php?id=<?=$row['member_id']?>'>Disapprove</a>
 </td>