Você precisa informar ao script PHP que deseja deletar o registro. Uma solução seria usar uma entrada oculta que é definida quando você chama removeRow, por exemplo.
function removeRow(el) {
// get the table row
var row = $(el).parents('tr:first');
// disable the input fields for the row
$('input', row).attr('disabled', 'disabled');
// rename update_id to delete_id and re-enable the field
$('input[name="update_id[]"]', row).attr('name', 'delete_id[]').removeAttr('disabled');
// hide the row
row.hide();
}
Este método não remove mais a linha da tabela do DOM. No entanto, ele desabilitará os campos de entrada contidos na linha e adicionará uma entrada oculta com o nome
beskrivelse_delete
. Quando o formulário for enviado, seu PHP agora terá uma maneira de saber quais registros precisam ser excluídos.
foreach ($_POST['delete_id'] as $deleteId) {
$deleteId = (int)$deleteId;
$db->query("DELETE FROM faktura_materialer WHERE id = $deleteId");
}
Atualização:criei um phpfiddle que tem algumas melhorias que você pode querer aprender. Esses pontos incluem:
- Suporte para exclusão onde o JavaScript não está ativado
- Usando declarações preparadas
(preferível a
add_slashes
) - Escape da saída usando htmlspecialchars
- Definir explicitamente os IDs de entrada para evitar suposições baseado em um contador incremental