繁体   English   中英

PHP 中的 MYSQL 查询正在删除我的表中的所有行

[英]MYSQL query in PHP is deleting all the rows in my table

我正在研究使用删除的 PHP 脚本,我只想删除 1 行。 但是每次我尝试删除 1 行时,SQL 都会执行但会删除表中的整行。

以下是我的 PHP 脚本

<table>
    <tr>
        <th>No.</th>
        <th>Publisher Code</th>
        <th>Publisher Name</th>
        <th>City</th>
        <th> </th>
    </tr>
    <!-- PHP FETCH/RETRIEVE FROM DB -->
    <?php
        include_once 'dbconnect.php';
        $sql = mysqli_query($conn, "SELECT * FROM tbl_publisher");
        $ctr = 1;
        $record = mysqli_num_rows($sql);
        if ($record > 0) {
            while ($record = mysqli_fetch_array($sql)) {
    ?>
            <tr>
                <td> <?php echo $ctr++ ?> </td>
                <td> <?php echo $record['TBL_PUBLISHER_CODE']; ?> </td>
                <td> <?php echo $record['TBL_PUBLISHER_NAME']; ?> </td>
                <td> <?php echo $record['CITY']; ?> </td>
                <td id="actions">
                <center>
                <a href="delete.php?del-pub=<?php echo htmlentities($record['TBL_PUBLISHER_CODE']);?>" onclick="return confirm('Do you really want to Delete?')">Delete</a>
                </center>
                </td>
            </tr>
    <!-- closing tag for php script -->
    <?php
            }
        }
    ?>
    <!--  -->
</table>

以下是我的删除。php

if(isset($_GET['del-pub']))
{
    $row = intval($_GET['del-pub']);
    $sql = mysqli_query($conn,"DELETE FROM tbl_publisher WHERE TBL_PUBLISHER_CODE = $row;");

    if ($sql) {
        header("Location: publisher.php");     
    }
    else {
        echo "<script>alert('Publisher was not deleted.');</script>"; 
        header("Location: publisher.php"); 
    }
    
}

我想知道如何只删除 1 行。 但它不断删除表中的整行。

转储$sql的内容后,我发现我的sql语法是罪魁祸首。

由于 TBL_PUBLISHER_CODE 使用 char 作为 ID。 而不是做“=”

DELETE FROM tbl_publisher WHERE TBL_PUBLISHER_CODE = $row;

我用了

DELETE FROM tbl_publisher WHERE TBL_PUBLISHER_CODE LIKE '".$row."'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM