[PHP] Ajuda em um CRUD
A duvida e a seguinte, eu nao estou conseguindo excluir um pedido de acordo com o ID do botao excluir que busca no atributo data do html. Eu consigo incluir numa boa, o problema esta nesse excluir mesmo.
index.php
get_pedidos.php
excluir_pedidos.php
index.php
<!DOCTYPE HTML> <html lang="pt-br"> <head> <meta charset="UTF-8"> <title>CRUD em PHP</title> <!-- jquery - link cdn --> <script src="https://code.jquery.com/jquery-2.2.4.min.js"></script> <!-- bootstrap - link cdn --> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"> <link rel="stylesheet" href="template/estilo.css"> <script type="text/javascript"> $(document).ready(function(){ $('#btn_novo_pedido').click( function(){ $.ajax({ url: 'includes/inclui_pedido.php', method: 'post', data: $('#form_pedido').serialize(), success: function(data) { $('#nme_usuario').val(''); $('#vlr_pedido').val(''); $('#dsc_pedido').val(''); atualizaPedidos(); } }); }); $('#btn_excluir_pedido').click( function(){ var id_pedido = $(this).data('id_pedido'); $.ajax({ url: 'includes/excluir_pedido.php', method: 'post', data: { excluir_id_pedido: id_pedido}, success: function(data){ atualizaPedidos(); } }); }); function atualizaPedidos(){ $.ajax({ url: 'includes/get_pedidos.php', success: function(data){ $('#pedidos').html(data); } }) } atualizaPedidos(); }); </script> </head> <body> <h1 class="text-center">CRUD em PHP</h1> <br /> <br /> <center><form id="form_pedido" class="input-group"> <input type="text" id="nme_usuario" name="nme_usuario" class="form-control" placeholder="Nome" maxlength="80" /> <input type="text" id="vlr_pedido" name="vlr_pedido" class="form-control" placeholder="Valor" /> <input type="text" id="dsc_pedido" name="dsc_pedido" class="form-control" placeholder="Descrição" maxlength="200" /> <button class="btn btn-success" id="btn_novo_pedido" type="button">Registrar Pedido</button> </form></center> <br /> <br /> <input type="text" name="" placeholder="Digite o número do pedido"><button>Consultar</button> <div class="table-responsive"> <table class="table"> <thead> <tr> <th>Pedido</th> <th>Nome</th> <th>Data</th> <th>Valor</th> <th>Descrição</th> <th>Operação</th> </tr> </thead> <tbody id="pedidos"> </tbody> </table> </div> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script> </body> </html>
get_pedidos.php
<?php require_once('../config/db.class.php'); $objDb = new db(); $link = $objDb->conecta_mysql(); $sql = " SELECT * FROM pedido ORDER BY data_pedido DESC "; $resultado_id = mysqli_query($link, $sql); if($resultado_id){ while($registro = mysqli_fetch_array($resultado_id, MYSQLI_ASSOC)){ echo "<tr>"; echo '<td> '.$registro['id_pedido'].' </td>'; echo '<td> '.$registro['nme_usuario'].' </td>'; echo '<td> '.$registro['data_pedido'].' </td>'; echo '<td> '.$registro['vlr_pedido'].' </td>'; echo '<td> '.$registro['dsc_pedido'].' </td>'; echo '<td> <button class="btn btn-warning" id="btn_excluir_pedido" data-id_pedido='.$registro['id_pedido'].'>Excluir</button> <button class="btn btn-info">Alterar</button></td>'; echo "</tr>"; } } else { echo 'Erro na consulta de tweets no banco de dados!'; } ?>
excluir_pedidos.php
<?php require_once('../config/db.class.php'); $excluir_id_pedido = $_POST['excluir_id_pedido']; if($excluir_id_pedido == ''){ die(); } $objDb = new db(); $link = $objDb->conecta_mysql(); $sql = " DELETE FROM pedido WHERE id_pedido = $excluir_id_pedido "; mysqli_query($link, $sql); ?>
Rômulo Junges
Curtidas 0
Respostas
Estevão Dias
23/06/2017
Olá Rômulo, tudo bem?
Eu consigo ver que você captura o data-id_pedido na linha a seguir:
Mas não consegui ver na página HTML um elemento que contenha o atributo data-id_pedido. Pode verificar se é essa a diferença entre as páginas de incluir e excluir?
Temos um exemplo bacana aqui na DevMedia que explica como trabalhar com Data Attributes, dá uma olhada lá (y)
https://www.devmedia.com.br/curso/curso-html5-data-attributes/2007
Um abraço.
Eu consigo ver que você captura o data-id_pedido na linha a seguir:
var id_pedido = $(this).data('id_pedido');
Mas não consegui ver na página HTML um elemento que contenha o atributo data-id_pedido. Pode verificar se é essa a diferença entre as páginas de incluir e excluir?
Temos um exemplo bacana aqui na DevMedia que explica como trabalhar com Data Attributes, dá uma olhada lá (y)
https://www.devmedia.com.br/curso/curso-html5-data-attributes/2007
Um abraço.
GOSTEI 0