使用表单删除数据库(MySql 和 PHP)中的行


Delete row in database (MySql and PHP )using form

我遇到了一个问题。我创建表单(usuw1.php(和(usuw2.php(。但是当我想删除行时,我收到错误消息,该行不会删除。我不知道为什么,因为我的代码没问题。我想。请帮帮我。

<html>
<body>
<h2>Usuwanie Rekordu</h2>
<form action="usuw2.php" method="post">
  <table>
    <tr>
      <td>ID:</td>
      <td><input type="text" name="ID" id="ID" ></td>
    </tr>
    <tr>
      <td>Nacja:</td>
      <td><input type="text" name="Nacja" id="Nacja" ></td>
    </tr>
    <tr>
      <td>LiczbaPkt:</td>
      <td><input type ="text" name="LiczbaPkt"  id="LiczbaPkt"></td>
    </tr>
    <tr>
      <td><input name="delete" type="submit" id="dodaj"
value="Usun Rekord"></td>
    </tr>
  </table>
</form>
</body>
</html> 
<?php
// php code to Delete data from mysql database 
if(isset($_POST['delete']))
{
    $hostname = "localhost";
    $username = "root";
    $password = "";
    $databaseName = "kluby ranking";
    // get id to delete
        $ID=$_POST["ID"];
        $Nacja=$_POST["Nacja"];
        $LiczbaPkt=$_POST["LiczbaPkt"]; 
    // connect to mysql
    $connect = mysqli_connect($hostname, $username, $password, $databaseName);
    // mysql delete query 
    $query = "DELETE FROM `europa` WHERE `ID ,Nacja, LiczbaPkt` = $ID,$Nacja,$LiczbaPkt";
    $result = mysqli_query($connect, $query);
    if($result)
    {
        echo 'Data Deleted';
    }else{
        echo 'Data Not Deleted';
    }
    mysqli_close($connect);
}
如果要

将超过 1 列与一堆结果进行比较,则不能使用 EQUALS(=( 符号。您可以通过AND的多个条件或使用如下所示的IN来实现此目的:

$query = "DELETE FROM `europa` WHERE (`ID`,`Nacja`,`LiczbaPkt`) in ('$ID','$Nacja','$LiczbaPkt')"

或具有多种条件:

$query = "DELETE FROM `europa` WHERE `ID` = '$ID' AND `Nacja` = '$Nanja' AND `LiczbaPkt` = '$LiczbaPkt'"

在这一行中有错误$query ="从europa中删除,其中ID ,Nacja, LiczbaPkt = $ID,$Nacja,$LiczbaPkt";

将上述行替换为

$query ="从europa中删除,其中ID='$ID',Nacja='$Nacja'和LiczbaPkt='$LiczbaPkt'";

使用此查询

$query = "从europa中删除,其中 ID = '$ID' 和 Nacja = '$Nacja' 和 LiczbaPkt' = '$LiczbaPkt'";