Удаление записи из БД через php

232
03 марта 2019, 17:20

Суть вопроса: нужно напить кнопку для удаления записи из БД. Имеем форму:

<form class="lot-item__form" action="../lot.php?id=<?=$id;?>" method="post">
    <?php $classname = isset($error['com']) ? "--invalid" : "";?>
    <p class="lot-item__form-item <?=$classname;?>">
         <label for="com">Ваш комментарий</label>
         <textarea name="com" id="com" cols="33" rows="8"></textarea>
         <button type="submit" class="button">Комментировать</button>
         <button type="submit" name="del" class="button">Удалить пост</button>
    </p>
</form>

Это форма отправки комментариев к посту в блоге. В этой же форме прикрутил кнопку удаления записи из БД. Настройки позволят удалить пост только автору, но вот как верно реализовать логику? Пробовал так:

if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    if (isset($_POST['del'])) {
        $sql = 'DELETE * FROM post WHERE id = "' .$id. '";';
        $res = mysqli_query ($con, $sql);
    }
}

Подскажите, в чем ошибки и как сделать правильно? Спасибо.

Answer 1
<button type="submit" name="del" class="button">Удалить пост</button>

сама по себе эта кнопка отправляет форму на сервер, в нее не заложен логический функционал, а в вашем случае это указать что данную запись нужно удалить

тут два способа вижу

1 Сделать чекбокс если он проставлен - удалить запись

2 Оставить вашу кнопку но в таком случае нужно будет в форму добавить скрытый input и на javascript отследить нажатие кнопки удаления записи. В этом случае javascript сам будет заполнять значение скрытого input.

Под скрытым input я понимаю <input type="hidden" name="del" value="false"/>

Answer 2

Вы передали в форме id как get-параметр

Или используйте $id = $_GET['id'];

Или передавайте value="$id"

READ ALSO
Задать размер миниатюр в галлерее ACF

Задать размер миниатюр в галлерее ACF

Использую Advanced Custom FieldsЭто код который выводит галлерею

190
Отправить запрос get

Отправить запрос get

Не получается отправить get запросНадо выбрать один из тре ценноков или ввести свою цену и отправить это методом get, пока что просто в адресную...

179
Есть ли приличные библиотеки для работы c Word файлами для php5.2

Есть ли приличные библиотеки для работы c Word файлами для php5.2

Вопрос в сабжеСмотрел PHPDOCX, PHPWORD обе требуют php >= 5

148
Владелец /var/lib/php

Владелец /var/lib/php

Система CentOS 7, стек nginx + php-fpm + MariaDB

240