1

我有一个包含项目的表格,每个项目都有一个供用户删除和恢复它的选项。并且有一个特殊的 php 文件'delete.php'。

print "<td>";
if ($row['deleted'] == 'y') {
print "<a href='delete.php?id=2'>Undeleted</a> ";
                     }
if ($row['deleted'] == 'n') {
print "<a href='delete.php?id=1'>Deleted</a> "; //'$_GET['id']'
}
print "</td>"

我的问题是如何获取用户单击的项目的 ID 并将其发送到“delete.php”?所以而不是

"<a href='delete.php?**id=2**'>Undeleted</a> ";

应该有类似的东西:

 "<a href='delete.php?**$_GET['id']'**'>Undeleted</a> ";

或者

 "<a href='delete.php?**<?php $_GET['id'] ?>**'>Undeleted</a> ";

但在第二个示例中,php 中的 php 没有意义。我想我可能只是不知道正确的语法。

4

2 回答 2

1

怎么了

echo "<a href='delete.php?id=$_GET[id]'>Undeleted</a>";

?

或者,用更现代的术语来说:

echo <<<EOL
<a href="delete.php?id={$_GET['id']}">Undeleted</a>
EOL;
于 2012-10-08T16:09:30.950 回答
0

如果您只想将 id 发送到 delete.php,只需保持您的 HTML 部分原样:

print "<td>";
if ($row['deleted'] == 'y') {
   print "<a href='delete.php?id=2'>Undeleted</a> ";
                 }
if ($row['deleted'] == 'n') {
   print "<a href='delete.php?id=1'>Deleted</a> "; //'$_GET['id']'
}
print "</td>"

在 delete.php 中,访问 id 为:

 $id = $_GET['id']

如果您想告诉 delete.php 是删除还是恢复该项目,您可能需要向 URL 添加另一个参数,例如 delete.php?id=1&action=d 或 delete.php?id=1&action=u

现在,如果您的 id 来自上述文件的 GET 参数,例如 file.php?id=1,您将必须像访问它 -

print "<a href='delete.php?id={$_GET[id]}'>Undeleted</a> ";

确保在查询中使用此 id 值之前对其进行清理和转义。

于 2012-10-08T16:11:02.613 回答