6

我有一个数据库中的项目表,每个项目我都需要一个删除按钮。

目前它正在工作,但按钮显示 ID 号,我希望它只说“删除”。

我仍然希望它根据 joke.ID 删除

$result = mysqli_query($con, "SELECT joke.id, joketext, jokedate, name, email FROM joke INNER JOIN author ON authorid = author.id");

echo "<form action='delete1.php' method='post'>
<table border='1'>
   <tr>
      <th>Joke</th>
      <th>Date</th>
      <th>Name</th>
      <th>Email</th>
      <th>Delete</th>
   </tr>";

   while( $row = mysqli_fetch_array( $result ) ) {
      echo "<tr>";
      echo "<td>" . $row['joketext'] . "</td>";
      echo "<td>" . $row['jokedate'] . "</td>";
      echo "<td>" . $row['name'] . "</td>";
      echo "<td>" . $row['email'] . "</td>";
      echo "<td><input type='submit' name='deleteItem' value='".$row['id']."' /></td>";
      echo "</tr>";
   }
   echo "</table>";
   echo "</form></br>";

   mysqli_close($con);
?>

这是delete1.php

    if ( isset( $_POST['deleteItem'] ) and is_numeric( $_POST['deleteItem'] ) ) {
        // here comes your delete query: use $_POST['deleteItem'] as your id
        mysqli_query($con,"DELETE FROM joke WHERE id='$_POST[deleteItem]'");
    }
    mysqli_close( $con );
    header('Location: joke1.php');
    exit();
?>

我只想让按钮说“删除”

4

2 回答 2

7

反过来走。制作一个隐藏的输入元素,如下所示:

echo "<input type='hidden' name='deleteItem' value='".$row['id']."'>";

并将现有的更改为

echo "<td><input type='submit' value='Delete' /></td>";

而已。

EDIT1:您必须为每个笑话保留不同的形式。

while($row = mysqli_fetch_array($result))
{

    echo "<tr>";
    echo "<td>" . $row['joketext'] . "</td>";
    echo "<td>" . $row['jokedate'] . "</td>";
    echo "<td>" . $row['name'] . "</td>";
    echo "<td>" . $row['email'] . "</td>";
    echo "<td>";
    echo "<form action='delete1.php' method='post'>
    echo "<input type='hidden' name='deleteItem' value='".$row['id']."'>";
    echo "<input type='submit' value='Delete' />";
    echo "</form>";
    echo "</td>";
    echo "</tr>";
}
于 2013-08-28T03:40:34.930 回答
0

使用简单的方法

echo "<td><input type='button' value='Delete' onclick='javascript:location.href=\'delete1.php?id=" .$row['id']. "\'' /></td>";

删除1.php

if(isset($_GET['id']) and is_numeric($_GET['id']))
于 2013-08-28T03:42:27.450 回答