Сделайте кнопку удаления - PullRequest
0 голосов
/ 28 мая 2020

Я работаю на цифровом рынке. Я пытаюсь сделать кнопку удаления, где он удалит продукт из моего портала администратора. Когда я нажимаю кнопку удаления, он перенаправляет меня обратно на страницу продукта, в нем говорится, что он удален, но строка все еще там.

<form action='delete.php?product_id="<?php echo $product_id; ?>"' method="post">
<input type="hidden" name="product_id" value="<?php echo $loadProduct['product_id']; ?>">
<button class="btn btn-sm btn-alt-danger" type="submit" name="DeleteProduct"><i class="fa fa-fw fa-times text-danger"></i></button
</form>

Вот мое удаление. php код

<?php
  require_once('../inc/config.php');


  if(isset($_POST['DeleteProduct'])){
    $product_id = $_GET['product_id'];

    $result = $db->delete('DELETE FROM products WHERE product_id = ?', array($product_id));
    if ($result) {
        header('Location: products.php?action=deleted');
    } else {
        header('Location: products.php?error=notremoved');
        }
    } 

?>

1 Ответ

1 голос
/ 28 мая 2020

Удалите строку запроса из атрибута action, но не имя скрипта. Вы используете POST, и этот product_id помещен в скрытый <input>

<form action="delete.php" method="post">

    <input type="hidden" name="product_id" value="<?php echo $loadProduct['product_id']; ?>">
    <button class="btn btn-sm btn-alt-danger" type="submit" name="DeleteProduct">
        <i class="fa fa-fw fa-times text-danger"></i>
    </button
</form>

Затем в вашем PHP используйте $_POST['product_id'], чтобы снова получить доступ к этому значению

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