Ir para conteúdo
biakelly

Adaptar comando excluir para perguntar antes se deseja deletar

Recommended Posts

Olá,

 

Tenho o seguinte comando funcionando perfeitamente, mas o problema é que ele exclui após clicar no link "Excluir alunos", tem como adaptar ele para perguntar antes se o usuário quer excluir o aluno? Estou tendo problemas com a pessoa que administra o colégio e esta excluindo "sem querer" os alunos.

 

<span style="cursor: pointer;" onclick="excluirAluno('<?php echo $row['id_aluno']; ?>')"> Excluir alunos</span>

 

 

Tenho essa função que avisa sobre a exclusão:

 

function excluirAluno(id_aluno) {
    $.ajax({
      url: './excluirAluno.php',
      type: 'POST',
      data: {
        id_aluno: id_aluno
      },
      success:function(response){
        if(response=="success"){
          alert("Aluno excluído.");
          location.reload();
        }
        else{
          alert(response);
        }
      }
    })
  }

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
5 horas atrás, biakelly disse:

<span style="cursor: pointer;" onclick="excluirAluno('<?php echo $row['id_aluno']; ?>')"> Excluir alunos</span>

O mais simples de se fazer isso é usando JavaScript, com a função confirm e do evento onclick

 

<span style="cursor: pointer;"><a href="http://site.com.br/aluno.php?id=<?php echo $row['id_aluno']; ?>" onclick="return confirm('Deseja mesmo Excluir este alunos?');">Excluir!</a></span>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma das formas mais fáceis é usar confirm do javascript

 

https://developer.mozilla.org/pt-BR/docs/Web/API/window/confirm

 


function excluirAluno(id_aluno) {

  if (window.confirm("Tem certeza que deseja excluir?")) { 
    $.ajax({
      url: './excluirAluno.php',
      type: 'POST',
      data: {
        id_aluno: id_aluno
      },
      success:function(response){
        if(response=="success"){
          alert("Aluno excluído.");
          location.reload();
        }
        else{
          alert(response);
        }
      }
    })
  }
    
}

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi Williams, não creio que era tão simples hehe minha nossa estou o dia inteiro batendo cabeça, teve uma solução que funcionou aqui, mas essa também é fantástica

 

Muito obrigada!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites
3 horas atrás, biakelly disse:

não creio que era tão simples

Sim é extremamente simples, um mínima noção de manipulação de elementos com javascript já é mais do que necessário.

Bastando apenas remover o comportamento do formulário e criando supostos botões de manuseio e pronto.

 

<div id="local_de_confirmar" style="display: none">
    Confirmar e salvar o formulário?
    <button onclick="salvarFormulario()">SIM</button>
    <button onclick="retornaFormulario()">NÃO</button>
</div>

<form method="POST" id="confirmar_antes">
    <input type="text" name="exemplo" value="João e Maria" />
    <button>Confirmar ?</button>
</form>


<script>
    var confirmar = document.getElementById('confirmar_antes'), // Obtem o local de confirmar
    confirmacao = document.getElementById('local_de_confirmar'); // Obtem o formulário

    function removerComportamento(e) {
        e.preventDefault(); // Remove o comportamento padrão de um objeto
        confirmacao.style.display = 'block'; // Mostra o local dos botões de validar
        return (false); // Mesmo removendo o comportamento retorne nada evita requisição de funções
    }

    function salvarFormulario() { // Salva o formulário
        confirmar.submit();
    }
    function retornaFormulario() { // Oculta o local dos botões
        confirmacao.style.display = 'none';
    }

    confirmar.addEventListener('submit', removerComportamento, false);
</script>

Entretanto é mais eficiente criar os elementos de confirmação dinamicamente.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por Kefatif
      Prezados, boa tarde.
       
      Utilizo um banco de dados Mysql + Programação PHP e HTML.
       
      Preciso que no filtro do sql ele não me traga o estoque do CNES "0000000", como eu poderia ta excluindo ele do filtro?
       
       
      $sqlestoque = "select A.ID_ESTOQUE, D.CNES, D.NOME_UNIDADE, B.COBERTURA, A.QTD, C.DATA_REGISTRO FROM lesao_rel_estoque_coberturas A INNER JOIN lesao_coberturas B ON A.ID_COBERTURA = B.ID_COBERTURA INNER JOIN lesao_estoque C ON A.ID_ESTOQUE = C.ID_ESTOQUE INNER JOIN unidades D ON C.CNES = D.CNES WHERE C.ID_ESTOQUE = (SELECT MAX(E.ID_ESTOQUE) FROM lesao_estoque E WHERE E.CNES = C.CNES) ORDER BY A.ID_ESTOQUE DESC";  
      Agradeço a ajuda desde já.
       
      Muito obrigado!
    • Por tiago8204
      O
       
    • Por ricardorstc
      E aí, pessoa tudo certo?
      Estou fazendo um programa que imita uma loja de informática com structs, alocação dinâmica e pilha em c e preciso da ajuda de vcs em algumas funções que não consegui fazer. Preciso que me ajudem fazer uma função para Editar um bloco especifico da pilha, outra função para Apagar um bloco especifico na pilha e uma função para Buscar valores a cima do informado pelo usuário, por exemplo: se o usuário digitar o preço 5, é pra mostrar os produtos com valores acima de 5. Vou mandar o código do que fiz aqui em baixo, mas a função excluir está errada, desconsiderem ela.

       
      #include <stdio.h> #include <stdlib.h> #include <ctype.h> typedef struct kabum {     char desc [30];     int cod;     float valor;     struct kabum *ant; } p; p *novo, *topo=NULL; int i=0; int quant; FILE *arquivo; int inserir () {     printf("\n\n    QUANTOS PRODUTOS QUER CADASTRAR?: ");     scanf("%d",&quant);     for (i=0; i<quant; i++)     {         novo=(p *) malloc (2*sizeof(p));         fflush(stdin);         printf("\n\n    PRODUTO: ");         gets(novo->desc);         printf("    CODIGO: ");         scanf("%d",&novo->cod);         printf("    VALOR: R$");         scanf("%f",&novo->valor);         novo->ant=NULL;         if(topo==NULL) //pilha vazia?         {             topo=novo;         }         else         {             novo->ant=topo;             topo=novo;         }     }     return (0); } int mostrar () {     p *tmp;     tmp=topo;     if (tmp==NULL)   //aqui ele testa p/ saber se a pilha está fazia     {         printf ("\n\n     PILHA VAZIA! INSIRA UM DADO E TENTE NOVAMENTE.\n");     }     else     {         while (tmp!=NULL)         {             printf("\n\n    PRODUTO: %s\n", tmp->desc);             printf("    CODIGO: %d\n",tmp->cod);             printf("    VALOR: R$%0.2f\n\n",tmp->valor);             tmp=tmp->ant;         }     }     return (0); } int deletar () {     char alerta;     p *extra;     extra = topo;     if (topo == NULL)     {         printf ("\n\n     PILHA VAZIA!\n");     }     else     {         printf("\n\n      TEM CERTEZA DE DESEJA EXCLUIR A PILHA? (S/N): ");         scanf("%c",&alerta);         alerta=tolower(alerta);         if (alerta=='s')         {             topo = topo -> ant;             free(extra);             printf("\n      PILHA DELETADA! \n");         }         if (alerta=='n')         {             printf("\n      PILHA NAO DELETADA! \n");         }         if (alerta!='s' && alerta!='n')         {             printf("\n\n      OPCAO INVALIDA\n");         }     }     return(0); } int salvar() {     p *tmp;     tmp=topo;     arquivo=fopen("text.txt","wb");     /*    if (tmp==NULL)         {             printf("\n\n    ERRO AO SALVAR, PILHA ESTA VAZIA. INSIRA UM DADO E TENTE NOVAMENTE! \n");         }*/     while (tmp!=NULL)     {         fprintf(arquivo,"\n\n     PRODUTO: %s \n",tmp->desc);         fprintf(arquivo,"     CODIGO: %d \n",tmp->cod);         fprintf(arquivo,"     VALOR: %f ",tmp->valor);         tmp=tmp->ant;     }     fclose(arquivo);     printf("\n\n    ARQUIVO SALVO COM SUCESSO!\n");     return 0; } int abrir() {     p *tmp;     tmp=topo;     arquivo=fopen("text.txt","rt");     if (arquivo == NULL)     {         printf("\n\n    NAO FOI POSSIVEL ABRIR O ARQUIVO. SALVE E TENTE NOVAMENTE! \n");     }     char frase [10000];     while (fgets(frase, 1000,arquivo)!=NULL)     {         printf("%s\n",frase);     }     fclose(arquivo);     return 0; } void sobre () {     printf("\n\n");     printf("    *================================ SOBRE ================================*\n");     printf("    |                                                                       |\n");     printf("    |PROGRAMA CRIADO UTILIZANDO ALOCACAO DINAMICA, STRUCTS E PONTEIROS, COMO|\n");     printf("    |FORMA DE AVALIACAO DA DISCIPLINA DE ESTRUTURA DE DADOS, DO PROFESSOR:  |\n");     printf("    |GUSTAVO QUIRINO E APRESENTADO EM SALA DE AULA, COM A FINALIDADE DE     |\n");     printf("    |OBTER UMA DAS NOTAS DA SEGUNDA UNIDADE.                                |\n");     printf("    |                                                                       |\n");     printf("    |                          IDENTIFICACAO                                |\n");     printf("    |                                                                       |\n");     printf("    |IFBA - CAMPUS BARREIRAS                                                |\n");     printf("    |TURMA: 732                                                             |\n");     printf("    |CURSO: INFORMATICA                                                     |\n");     printf("    |PROFESSOR: GUSTAVO QUIRINO                                             |\n");     printf("    |COMPONENTES: LUCAS GOMES, MATEUS SENE E RICARDO CARVALHO               |\n");     printf("    |                                                                       |\n");     printf("    =========================================================================\n"); } int main () {     char op_menu=0, op_menu_interno=0; /*variaveis zeradas pq pode ser que o programa seja exacutado mais de uma vez     por isso eu zerei todas, para não pegar os valores das vezes anteriores. A cada nova execução     todas são zeradas*/     do     {         printf("\n\n");         printf("    *======================= MENU PRINCIPAL =========================*\n");         printf("    |                                                                |\n");         printf("    |                                                                |\n");         printf("    |         A - INSERIR                   B - MOSTRAR              |\n");         printf("    |                                                                |\n");         printf("    |         C - DELETAR                   D - EDITAR               |\n");         printf("    |                                                                |\n");         printf("    |         E - BUSCAR                    F - SALVAR               |\n");         printf("    |                                                                |\n");         printf("    |         G - ABRIR                     H - SOBRE                |\n");         printf("    |                                                                |\n");         printf("    |                        S - SAIR                                |\n");         printf("    |                                                                |\n");         printf("    |                                                                |\n");         printf("    ==================================================================\n");         fflush(stdin);         printf("\n    Digite...: ");         scanf("%c", &op_menu);         op_menu=tolower(op_menu);         fflush(stdin); //limpa o buffer do teclado         switch(op_menu)         {         case 'a'  :             fflush(stdin);             system("cls"); //limpa a tela             inserir();             printf("\n");             do             {                 printf("    0 - Menu principal: ");                 scanf("%s",&op_menu_interno);             }             while (op_menu_interno!='0');             system("cls");             break;             fflush(stdin);         case 'b':             system("cls");             mostrar();             printf("\n");             do             {                 printf("    0 - Menu principal: ");                 scanf("%s",&op_menu_interno);             }             while (op_menu_interno!='0');             system("cls");             break;         case 'c':             fflush(stdin);             system("cls");             deletar();             printf("\n");             do             {                 printf("    0 - Menu principal: ");                 scanf("%s",&op_menu_interno);             }             while (op_menu_interno!='0');             system("cls");             break;             fflush(stdin);         case 'd':             fflush(stdin);             system("cls");             printf("você digitou: 4");             printf("\n");             do             {                 printf("    0 - Menu principal: ");                 scanf("%s",&op_menu_interno);             }             while (op_menu_interno!='0');             system("cls");             break;             fflush(stdin);         case 'e':         case 'f':             fflush(stdin);             system("cls");             salvar();             printf("\n");             do             {                 printf("    0 - Menu principal: ");                 scanf("%s",&op_menu_interno);             }             while (op_menu_interno!='0');             system("cls");             break;         case 'g':             fflush(stdin);             system("cls");             abrir();             printf("\n");             do             {                 printf("    0 - Menu principal: ");                 scanf("%s",&op_menu_interno);             }             while (op_menu_interno!='0');             system("cls");             break;         case 'h':             system("cls");             sobre();             printf("\n");             do             {                 printf("    0 - Menu principal: ");                 scanf("%s",&op_menu_interno);             }             while (op_menu_interno!='0');             system("cls");             break;         case 's':             system("cls");             printf("\n");             printf("Finalizando programa...");             printf("\n");             exit(0);             break;         default:             system("cls");             printf("Codigo invalido! Digite novamente");             break;         }     }     while (op_menu!=5);     return (0); }  
    • Por Leandro Pinto
      Já tentei excluir desses dois jeitos:
      . oraenv (orcl)
      sqlplus / as sysdba
      sql>alter diskgroup data drop file '+DATA/spfileASM.ora';
      e também:
      . oraenv (+ASM)
      asmcmd
      asmcmd>cd DATA
      asmcmd>data>rm spfileASM.ora 

      e acontece o erro:
      ora-15032: not all alterations performed
      ora-15028: ASM file '+data/spfileASM.ora' not dropped; currently being accessed (DBD ERROR: OCIStmRxecute)
    • Por Mayara Andres
      Estou fazendo um trabalho da faculdade e estou com vários problemas "bestas" mas que não consigo resolver. 
      É um sistema para uma biblioteca, que possui os menus: Usuario, Livros, Editoras e Emprestimos. (E em cada um deles, sub-menus com cadastrar, alterar, excluir e listar)
      Comecei fazendo pelo menu usuario. Ele cadastra e lista os cadastros, o código do usuario é inserido sozinho.
      ERRO 1: Quando inicio o programa, digito 1 pra entrar no menu Usuario, e 1 pra cadastrar (nessa parte, eu tenho que digitar 1, dar enter e digitar 1 novamente, só assim ele entra no sub-menu de cadastro. Acontece a mesma coisa para todos os outros menus.
      ERRO 1.1: Quando eu listo os cadastros, ele sempre mostra um mais, como o chamado "lixo", mesmo usando fflush.
      ERRO 2: Para alterar o cadastro do usuario, preciso que o usuario insira o codigo, verificar se é igual ao cadastrado e só assim alterar, mas ele cai sempre no else.

       
      /*  ============================================================================  Name        : biblioteca-mayara.c  Author      : Mayara   Version     :  Copyright   : Your copyright notice  Description : Hello World in C, Ansi-style  ============================================================================  */ #include <stdio.h> #include <stdlib.h> typedef struct {     int codUsuario,cpf;     char nomeUsuario[20]; }usuario; //INICIO FUNCOES //FUNCAO QUE NAO RETORNA NEM RECEBE NADA, SÓ IMPRIMI O CABECALHO void cabecalho () {     printf ("\t\t ========================================== \n");     printf ("\t\t = SISTEMA DE GERENCIAMENTO DE BIBLIOTECA =\n");     printf ("\t\t ====  DESENVOLVIDO POR MAYARA ANDRES  ==== \n");     printf ("\t\t ========================================== \n"); } //FUNCAO QUE RECEBE A OPCAO DO MENU E RETORNA A MESMA int menuPrincipal () {     int opMP = 0;     printf ("\t\t\t\t MENU PRINCIPAL \n ");     printf ("\t\t\t\t 1 - Usuarios \n");     printf ("\t\t\t\t 2 - Livros \n");     printf ("\t\t\t\t 3 - Editoras \n");     printf ("\t\t\t\t 4 - Emprestimos \n");     printf ("\t\t\t\t 5 - Sair \n");     scanf ("%d", &opMP);     return opMP; } //FUNCAO QUE RECEBE A OPCAO DO MENU DE USUARIOS E RETORNA A MESMA int menuUsuario () {     int opMU = 0;     printf ("\t\t\t\t 1 - Cadastrar \n");     printf ("\t\t\t\t 2 - Listar \n");     printf ("\t\t\t\t 3 - Alterar \n");     printf ("\t\t\t\t 4 - Excluir \n");     printf ("\t\t\t\t 5 - Sair \n");     scanf ("%d", &opMU);     } //FUNCAO PARA ZERAR O VETOR DE USUARIOS void zerarVetor (usuario *vet) {     int i;     for (i=0;i<20;i++) {         vet.codUsuario = 0;         vet.cpf = 0;     } } //FUNCAO QUE RECEBE O VETOR E RETORNA EM QUE POSICAO DO VETOR //FOI INSERIDO O ULTIMO USUARIO int retornaUltPosicao (usuario *vet) {     int i=0;     //verifica se o vetor na posicao i é maior que zero     //se for maior que zero, tem usuario cadastrado     //acrescenta um     while(vet[i+1].codUsuario > 0) {         i++;     }     //sai do loop e retorna a ultima posicao encontrada     return i+1; } //funcao para cadastro de usuarios void cadastrarUsuario (usuario *vet) {     int i = 0;     //busca a ultima posicao cadastrada     i = retornaUltPosicao(vet);     /*if (i == 0) {         i = 1;     }*/     //delimitar para 20 o numero de registros     if (i == 20) {         printf ("Limite de usuarios atingido \n");         system ("PAUSE");         return;     }     //aqui começa o cadastro     printf (" \t\t\t\tCADASTRAR USUARIO:  \n");     printf ("\t\t\t\t----------------------\n");     printf ("\n\n\t\t\t\tCodigo do usuario: %d \n",i);    // fflush (stdin);     vet.codUsuario = i;     printf ("\n \t\t\t\tDigite o nome do usuario: ");     fflush (stdin);     gets (vet.nomeUsuario);     printf ("\n \t\t\t\tDigite o cpf do usuario: ");     //fflush (stdin);     scanf ("%d", &vet.cpf);     printf ("\n\t\t\t\tUsuario cadastrado com sucesso!\n");     system ("PAUSE"); } void listaUsuarios (usuario *vet) {     int i;     printf (" \t\t\t\tUSUARIOS CADASTRADOS:  \n");     printf ("\t\t ==========================================\n");     for (i=1;i<=retornaUltPosicao(vet);i++) {     printf ("\n\t\t\t\t Usuario Numero: %d",i);     printf ("\n\t\t\t\t  Cod: %d", vet.codUsuario);     printf ("\n\t\t\t\t  Nome: %s ", vet.nomeUsuario);     printf ("\n\t\t\t\t  CPF: %d  ", vet.cpf);     printf ("\n \n");     }     system ("PAUSE"); } void excluirUsuario (usuario *vet) {     int i,cod;     printf("Digite o codigo do usuario: ");     scanf("%d", &cod);     /*for (i=0;i<20;i++) {         if (vet.codUsuario == cod) {             vet.nomeUsuario = "";             vet.cpf = "";         }*/     } } void alterarUsuario (usuario *vet) {     int i,cod;         printf("Digite o codigo do usuario: ");         scanf("%d", &cod);     for (i=0;i<20;i++) {     //CAI SEMPRE NO ELSE     if (vet.codUsuario == cod) {         printf("Digite o nome: ");         fflush(stdin);         gets(vet.nomeUsuario);         printf("\n");         printf("Digite o cpf: ");         scanf("%d", vet.cpf);         printf("Usuario alterado com sucesso!");     }     else {             printf("Codigo invalido \n");     }     system ("pause");     } } //FIM FUNCOES int main() {     //vetor do tipo usuario de 20 posicoes     usuario vet[20];        //variavel pra usar no switch     int opEscolhida;     //chamando o zerar vetor USUARIOS     zerarVetor(vet);         //while pra repetir     while (1==1) {         //limpa a tela         system ("CLS");         //chama o cabeçalho         cabecalho();         //op recebe o que foi escolhido no menu         opEscolhida = menuPrincipal();         switch (opEscolhida) {         case 1:         //limpa a tela         system("CLS");         //chama o cabecalho         cabecalho();         //printf pra mostrar qual o menu         printf ("\t\t\t\t MENU USUARIOS \n");         //chama o menu de usuarios         menuUsuario(vet);         int opmenuusuario;         scanf("%d", &opmenuusuario);         if (opmenuusuario == 1) {             system ("CLS");             cabecalho();             cadastrarUsuario(vet);         }         if (opmenuusuario == 2) {             system ("CLS");             cabecalho();             listaUsuarios(vet);         }         if (opmenuusuario == 3) {             system ("CLS");             cabecalho();             alterarUsuario(vet);         }         /*if (opmenuusuario == 4) {             system ("CLS");             cabecalho();             excluiUsuario (vet);         }*/         break;         case 2:         //limpa a tela         system("CLS");         //chama o cabecalho         cabecalho();         //printf pra mostrar qual o menu         printf ("\t\t\t\t MENU LIVROS \n");         //chama o menu de livros         menuLivro(vet2);         break;         case 3:         //limpa a tela         system("CLS");         //chama o cabecalho         cabecalho();         //printf pra mostrar qual o menu         printf ("\t\t\t\t MENU EDITORA \n");         //chama o menu de editoras         menuEditora(vet3);         break;         case 4:         //limpa a tela         system("CLS");         //chama o cabecalho         cabecalho();         //printf pra mostrar qual o menu         printf ("\t\t\t\t MENU EMPRESTIMOS \n");         //chama o menu de emprestimos         menuEmprestimo(vet4);         break;         case 5:             printf("VOCE ESCOLHEU SAIR DO PROGRAMA!\n");             printf("\n\n");             system ("PAUSE");         /*         default:             printf("OPCAO INVALIDA, POR FAVOR SELECIONE UM ITEM DO MENU");             printf("\n\n");             system ("PAUSE");*/         }//FECHA SWITCH     }//FECHA WHILE }//FECHA MAIN
       
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.