Удалить запрос не работает (без ошибок / синтаксических ошибок) - PullRequest
0 голосов
/ 05 марта 2019
<input type="hidden" name="code"
        value="<?php echo $product['productCode']; ?>">
<input type="submit" value="Delete">

// Get ID
$code = filter_input(INPUT_POST, 'productCode', FILTER_VALIDATE_INT);

// Delete the product from the database
if ($code != false) {
    $query = 'DELETE FROM products
              WHERE productCode = :productCode';
    $statement = $db->prepare($query);
    $statement->bindValue(':productCode', $code);
    $success = $statement->execute();
    $statement->closeCursor();
}

Код вверху пытается получить код, где находится код php / MySQL внизу экрана.Там нет ошибок, которые появляются или запускаются, когда код выполняется на веб-странице, и код ничего не помечает в редакторе.Я действительно в растерянности из-за того, что здесь происходит, и никто, кого я спрашиваю, понятия не имеет, что не так.Любая помощь будет оценена!

Ответы [ 5 ]

0 голосов
/ 05 марта 2019

Можете ли вы выйти из системы: productCode?Вполне возможно, что значение не соответствует вашему, и удаление несуществующего элемента с радостью ничего не сообщит, если совпадение не найдено.

0 голосов
/ 05 марта 2019

Пожалуйста, используйте почтовый запрос AJAX для удаления по коду.

0 голосов
/ 05 марта 2019

Я думаю, у вас есть коды HTML и PHP в одном файле.

В чем может быть проблема:

Добавьте условие, если форма опубликована, перейдите для удаления продукта.

if (isset($_POST['productCode'])) {
 // Get ID
 $code = filter_input(INPUT_POST, 'productCode', FILTER_VALIDATE_INT);
 // Delete the product from the database
 if ($code != false) {
    $query = 'DELETE FROM products
              WHERE productCode = :productCode';
    $statement = $db->prepare($query);
    $statement->bindValue(':productCode', $code);
    $success = $statement->execute();
    $statement->closeCursor();
 }
}
0 голосов
/ 05 марта 2019

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

<input type="hidden" name="productCode" value="<?php echo $product['productCode']; ?>">

Также вам нужно позаботиться о тегах php <?php ?>, который должен начинаться и заканчиваться для сценария php.

0 голосов
/ 05 марта 2019

поле таблицы prdocutcode почему вас только зовут, замените код под моим кодом

 <input type="hidden" name="productCode" value="<?php echo $product['productCode']; ?>">
...