anderluz 2 Denunciar post Postado Abril 22, 2015 Galera seguinte queria que quando o usuário clicar no botão ele abra uma telinha pedindo se o usuário quer finalizar o período de agendamento, se sim faça um update no banco, se não não faça nada, tentei fazer em JavaScript e PHP como na função abaixo, o problema é que sempre que a pagina é carregada ele executa o SQL sem precisar clicar no botão o que é um problema, alguém sabe um forma mais inteligente de fazer isso, sem dar erro? <SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript"> function exclui(){ decisao = confirm("Tem certeza que deseja excluir o periodo de agendamento e todos os agendamentos já agendados?"); if (decisao){ <?php $queryEnceraAgendamento = "UPDATE PERIODO_ATENDIMENTO SET DATA_FIM = '$date' WHERE PERIODO_ATENDIMENTO_ID = $id"; mysql_query($queryEnceraAgendamento) or die ('Erro ao encerrar o agendamento:<br/>'.mysql_error()); ?> alert ("Você excluiu o periodo de agendamento e todos os agendamentos agendados neste periodo"); window.location="agendamentos_index.php"; } } </SCRIPT> Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Abril 22, 2015 O que você fez não existe. O JS é executado no cliente. o PHP é executado no servidor. Não há como, na mesma lógica, esperar a confiirmação do usuário para rodar um PHP. Pode fazer algo assim: <a href="excluir.php?id=id_do_registro" onlcick="return confirm('Tem certeza?');">Excluir</a> Aí no excluir.php você roda a SQL. ps: cuidado com acesso direto ao excluir.php. Uma alternativa é usar um form POST em vez de um link e enviar um token de validação. Leia sobre CSRF e entenderá melhor Compartilhar este post Link para o post Compartilhar em outros sites
anderluz 2 Denunciar post Postado Abril 23, 2015 Obrigado pela explicação, foi realmente muito útil, consegui fazer, está funcionando! Compartilhar este post Link para o post Compartilhar em outros sites