1

我需要一个允许用户编辑来自 SQL 数据库的数据的表单。

我的表单的主页包含一个表格,其中显示了任何可用数据,并且还有可用的编辑删除选项。样本:

{
$row=mysql_fetch_array($result);
echo "<tr>";
echo "<td>".$row["name"]."</td>";
echo "<td>".$row["occuptation"]."</td>";
echo '<td><a href="edit.php"><img src="edit.png"/></a></td>';
echo '<td><a href="delete.php"><img src="delete.png"/></a></td>';
echo "</tr>";
}

当用户单击时,edit.png我需要它指向edit.php所选整行中的数据(用户选择单击编辑或删除的那一行)以表单形式显示的位置(如默认值)。我不知道如何实现这一目标。

任何帮助表示赞赏!如果我感到困惑,请告诉我,我会尝试进一步解释。

4

3 回答 3

2

您要做的是在编辑和删除链接中包含一个标识符作为查询字符串参数:

echo '<td><a href="edit.php?id=' . $row["id"] . '"><img src="edit.png"/></a></td>';
echo '<td><a href="delete.php?id=' . $row["id"] . '"><img src="delete.png"/></a></td>';

(当然,我假设你的标识符的名称。但你明白了。)

这将告诉那些页面他们应该显示哪些记录。这些页面将通过以下方式获得标识符:

$_GET["id"]

您需要考虑的几件事:

  • $_GET["id"]在尝试对其进行任何操作之前,请确保检查正确的标识符值。永远不要在没有检查的情况下假设它是有效的。
  • 不要简单地将值连接到 SQL 字符串中。使用诸如PDO 之类的东西来构建带有参数的查询。您在这里要避免的是一种称为SQL 注入漏洞的东西。
  • 在显示任何内容之前,请确保允许用户访问相关操作(编辑或删除)的相关记录。永远不要假设链接直接来自页面上的代码输出。任何人都可以轻松地手动更改idURL 中的值。
于 2012-06-13T03:05:09.063 回答
0

您可以做的是在 a 标签的 href 中包含数据

{
    $row=mysql_fetch_array($result);
    echo "<tr>";
    echo "<td>".$row["name"]."</td>";
    echo "<td>".$row["occuptation"]."</td>";
    echo '<td><a href="edit.php?name={$row['name']}&occupation={$row['occupation']}"><img src="edit.png"/></a></td>';
    echo '<td><a href="delete.php"><img src="delete.png"/></a></td>';
    echo "</tr>";
}

如果还需要将数据发送到该脚本,则可以对 delete.php 执行相同的操作。

于 2012-06-13T03:01:32.313 回答
0
 $selectQuery = mysqli_query($database, "SELECT * FROM products");
   if($selectQuery){
              while ($row =mysqli_fetch_array($selectQuery)){
              <td><a href="delete.php?editid=<?php echo $row['id'];?>">
              <img src="delete.png"/></a></td><?php } }?>

echo '<td><a href="delete.php?id=' . $row["id"] . '"><img src="delete.png"/></a></td>';
于 2017-07-05T14:25:27.603 回答