Удаление записи из базы данных кнопкой в ​​PHP - PullRequest
0 голосов
/ 24 июня 2019

Я должен удалить запись из базы данных с помощью кнопки, но мой запрос на удаление не работает.Записи вводятся в базу данных успешно с запросом вставки.Я следовал точному руководству по PHP-коду, доступному на YouTube «Как удалить записи из базы данных с помощью PHP и MySQL» от «kanpurwebD».Код в учебнике работает нормально, но мой код по-прежнему не удаляет записи.(У меня есть 2 записи, внесенные в базу данных).Мой код выглядит следующим образом:

<div class="container">

<div class="row">
    <form action='add_record.php' method='get'><button type='submit' name='id' value='submit' class='btn btn-default'>ADD RECORD</button><br />
    </form>
    <table class="table table-hover table-responsive">
        <thead>
            <tr>
                <th>Topic #</th>
                <th>Name</th>
                <th>Admin ID</th>
                <th>Edit</th>
                <th>Delete</th>
            </tr>
        </thead>

        <tbody>
        <?php
        echo '<br />';
        $query = "SELECT * FROM tb_topic";
        $result = $con->query($query);
        if(isset($_POST['submitDeleteBtn'])){
            $key = $_POST['keyToDelete'];
            $check = "Select * from tb_topic where topic_id = '$key'";
            if(mysqli_num_rows($con, $check)>0){
                $query_delete = mysqli_query($con,"Delete from tb_topic where topic_id = '$key'");
                echo 'record deleted';
            }
        }
        while($query_row = mysqli_fetch_array($result)) {?>

                <tr>
                    <td><?php echo $query_row['topic_id'];?></td>
                    <td><?php echo $query_row['topic_name'];?></td>
                    <td><?php echo $query_row['aid'];?></td>
                    <td><input type = 'checkbox' name = 'keyToDelete' value = "<?php echo $query_row['topic_id'];?>" required></td>
                    <td><input type="submit" name="submitDeleteBtn" class="btn btn-danger"></td>
                </tr>

        <?php }
        ?>

</html>

1 Ответ

0 голосов
/ 26 июня 2019

Я получил решение, используя следующее утверждение:

if(isset($_GET['delete'])) {
    $page = filter_input(INPUT_GET, 'delete', FILTER_VALIDATE_INT, FILTER_NULL_ON_FAILURE);
    $sql = "DELETE FROM tb_topic WHERE topic_id = $page";
}

$ _ GET () не принимал id как int, поэтому я попытался его типизировать, и это сработало для меня.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...