Ir ao conteúdo
  • Cadastre-se

PHP Como ativar o botao de cancelar um agendamento


Posts recomendados

To criando um programa onde a pagina busca do banco todos os agendamentos efetuados, porém quero criar um botao onde eu possa cancelar tais agendamentos.

 

Citação

 <!-- aqui to criando o botao onde cancela. Ainda não vou ativar a efetivação pois depois ainda criarei um filtro -->

 

<form method="post" action="cancel_agenda.php">

        <select name="teste">

        <option value="efetiva">Efetivar Agendamento</option>

        <option value="cancela">Cancelar Agendamento</option>

        </select>

        <input type="submit" value="Ok" />

        <hr>

        </form>

Ao clicar no botao de cancelar preciso que apareça o staus q esta cancelado e altere no banco.

 

Citação

<?php

  // Aqui nesta aba cancel_agenda.php é que vai ser efetuada o cancelamento onde mostrará para o usuario que foi cancelado com sucesso e alterá no banco.

 

    include "conexao.php";

    // acentuação

      mysqli_query($conexao,"SET NAMES 'utf8'");  

      mysqli_query($conexao,'SET character_set_connection=utf8');

      mysqli_query($conexao,'SET character_set_client=utf8');  

      mysqli_query($conexao,'SET character_set_results=utf8');

 

      $id_agenda=$_POST["id_agenda"];

      date_default_timezone_set("Brazil/East");

      $dataatual=date("d-m-y");

     

 

      $insert_can="UPDATE `tb_agendamento` SET `status_agenda`='Cancelado' WHERE id_agenda='$id_agenda'";

      $query_can=mysqli_query($conexao, $insert_can);

 

      if ($query_can>0) {

        echo "Sua consultoria foi cancelada com sucesso!";

      }

      else{

        echo "Não foi possível realizar o cancelamento!";

      }


 

    //insere uma nova notificação

    $scont= "SELECT * FROM tb_agendamento WHERE dt_agenda='$dataatual'";

    $qcont=mysqli_query($conexao,$scont);

    $i=0;

        while($l=mysqli_fetch_array($qcont)){ $i++; }

     

    if ($i == 1) {

        $icont=mysqli_query ($conexao,'INSERT INTO `tb_notificacoes`( `titulo_notifica`, `texto_notifica`, `data_notifica`, `status_notifica`) VALUES ("Cancelamento","Um cancelamento foi realizado.","'.$dataatual.'","Não visualizado")');    

    }

    else{

        $ucont=mysqli_query ($conexao,'UPDATE `tb_notificacoes` SET `texto_notifica`="Houve '.$i .' cancelamentos hoje.",`status_notifica`="Não visualizado"  WHERE titulo_notifica="Cancelamento" AND data_notifica="'.$dataatual.'"');  

    }

   

?>

 

 


 

A mensagem de erro que mostra "está em anexo mas quando clico no botão é a seguinte: 

 

Citação

 

cancelamento.jpg

mensagem.jpg.24aace7e0571593dac3c59ad2e8bc666.jpg

 

Link para o comentário
Compartilhar em outros sites

13 minutos atrás, angeloroberto disse:

To criando um programa onde a pagina busca do banco todos os agendamentos efetuados, porém quero criar um botao onde eu possa cancelar tais agendamentos.

 

Ao clicar no botao de cancelar preciso que apareça o staus q esta cancelado e altere no banco.

 

 

 


 

A mensagem de erro que mostra "está em anexo mas quando clico no botão é a seguinte: 

 

 

 

Bom Dia

Eu tenho um código parecido para eliminar dados de uma tabela ao clicar em um link mas acho que se você alterar algumas coisas pode ser que ajude de alguma forma :)

<?php

/* Verificar se foi enviado o pedido para eliminar  */

if ($_SERVER["REQUEST_METHOD"] == "GET") {

    $Referência = filter_input(INPUT_GET, 'id');

    $operacao = filter_input(INPUT_GET, 'operacao');


    /* validar os dados recebidos através do pedido */

    if (empty($Referência) || $operacao!="eliminar"){

        echo "  Erro, pedido inválido ";

        exit();

    }    

}

else{

   echo " Erro, pedido inválido ";

   exit();

}


/* estabelece a ligação à base de dados */

$ligacao = new mysqli("localhost", "root", "", "moviblock");


/* verifica se ocorreu algum erro na ligação */

if ($ligacao->connect_errno) {

    echo "Falha na ligação: " . $ligacao->connect_error;

    exit();

}

   

/* texto sql da consulta*/

$consulta = "DELETE FROM AS12 WHERE Referência = '$Referência'" ;


/* executar a consulta e testar se ocorreu erro */

if (!$ligacao->query($consulta)) {

    echo " Falha ao executar a consulta: \"$consulta\" <br>" . $ligacao->error;

    $ligacao->close();  /* fechar a ligação */

    echo ' <br> <a href="AS12.php"> Voltar à lista de materiais </a>' ;

    exit();

}


/* verificar o resultado da consulta */

if($ligacao->affected_rows > 0){

    echo " O registo com a referência = $Referência foi eliminado com sucesso" ;

    $ligacao->close();       /* fechar a ligação */

    echo '<br> <a href="AS12.php"> Voltar à lista de materiais </a>' ;

}

else{

    header("Location: AS12.php");

    echo " O registo com a Referência = $Referência não encontrada!" ;

    $ligacao->close();       /* fechar a ligação */

    echo '<br> <a href="AS12.php"> Voltar à lista de materiais </a>' ;

}

 

Link para o comentário
Compartilhar em outros sites

22 horas atrás, David Martinho disse:

 

Bom Dia

Eu tenho um código parecido para eliminar dados de uma tabela ao clicar em um link mas acho que se você alterar algumas coisas pode ser que ajude de alguma forma :)

<?php

/* Verificar se foi enviado o pedido para eliminar  */

if ($_SERVER["REQUEST_METHOD"] == "GET") {

    $Referência = filter_input(INPUT_GET, 'id');

    $operacao = filter_input(INPUT_GET, 'operacao');


    /* validar os dados recebidos através do pedido */

    if (empty($Referência) || $operacao!="eliminar"){

        echo "  Erro, pedido inválido ";

        exit();

    }    

}

else{

   echo " Erro, pedido inválido ";

   exit();

}


/* estabelece a ligação à base de dados */

$ligacao = new mysqli("localhost", "root", "", "moviblock");


/* verifica se ocorreu algum erro na ligação */

if ($ligacao->connect_errno) {

    echo "Falha na ligação: " . $ligacao->connect_error;

    exit();

}

   

/* texto sql da consulta*/

$consulta = "DELETE FROM AS12 WHERE Referência = '$Referência'" ;


/* executar a consulta e testar se ocorreu erro */

if (!$ligacao->query($consulta)) {

    echo " Falha ao executar a consulta: \"$consulta\" <br>" . $ligacao->error;

    $ligacao->close();  /* fechar a ligação */

    echo ' <br> <a href="AS12.php"> Voltar à lista de materiais </a>' ;

    exit();

}


/* verificar o resultado da consulta */

if($ligacao->affected_rows > 0){

    echo " O registo com a referência = $Referência foi eliminado com sucesso" ;

    $ligacao->close();       /* fechar a ligação */

    echo '<br> <a href="AS12.php"> Voltar à lista de materiais </a>' ;

}

else{

    header("Location: AS12.php");

    echo " O registo com a Referência = $Referência não encontrada!" ;

    $ligacao->close();       /* fechar a ligação */

    echo '<br> <a href="AS12.php"> Voltar à lista de materiais </a>' ;

}

 

 

tipo, agr ele ta até dando a mensagem que a consultoria foi "cancelada com sucesso" mas no banco mysql continua com status de agendado

 

image.png.915e6bcb0fe98a9ffda1426aede9f05b.png

Link para o comentário
Compartilhar em outros sites

15 minutos atrás, angeloroberto disse:

 

tipo, agr ele ta até dando a mensagem que a consultoria foi "cancelada com sucesso" mas no banco mysql continua com status de agendado

 

image.png.915e6bcb0fe98a9ffda1426aede9f05b.png

 

AH já tinha esquecido, você no php onde tem a tabela deve conter um botão ou link que redirecione você para o php dos cancelamentos tipo assim:

 echo "<a href=\"eliminarAS11.php?id={$row['Referência']}&operacao=eliminar\"</a>";

 

Você altera o link para o php de cancelar os agendamentos e a row para um campo da sua tabela, dps no PHP dos cancelamentos muda a váriavel que eu pus (Referência) para o campo que você colocar nesse código novo aí, e depois já deve funcionar

 

imagem.png.1c6a1fa4f52a46efaf82b7716abb5ae4.png

 

você dps só troca essas váriaveis que diz Referência pelo que você tiver metido na row daqui:

 

imagem.png.e47f2e0caff1d44e71993b58caf6cc03.png

 

Dps deve dar td certo :)

 

Link para o comentário
Compartilhar em outros sites

9 minutos atrás, David Martinho disse:

 

Tem que ter atenção no PHP na consulta SQL você deve colocar um elemento que identifique a coluna...

Nesse caso você deve colocar DELETE FROM  *SUA TABELA*  WHERE id_agenda =  *váriavel criada no php eliminar*

tipo, eu só queria q o status do agendamento mudasse de agendado para cancelado. Ele da a msg que ta cancelado mas não altera no banco.

 

Citação

image.png.965c1aa008311a93db06ec14fb2ed516.pngimage.png.b6c73bbd7382ec93ced370255773bf20.png

 

 

Link para o comentário
Compartilhar em outros sites

7 minutos atrás, angeloroberto disse:

tipo, eu só queria q o status do agendamento mudasse de agendado para cancelado. Ele da a msg que ta cancelado mas não altera no banco.

 

 

 

 

Eu pensei que queria eliminar a coluna quando o utilizador cancelasse a consulta, nesse caso então o código ficará diferente mas penso que se alterar a query SQL para update pode funcionar na mesma o código

Link para o comentário
Compartilhar em outros sites

6 minutos atrás, David Martinho disse:

 

Eu pensei que queria eliminar a coluna quando o utilizador cancelasse a consulta, nesse caso então o código ficará diferente mas penso que se alterar a query SQL para update pode funcionar na mesma o código

pior q a query ja ta como update

Citação

image.png.c47818b2fb8eb5bb89ee4940e5cc6f4e.png

 

Link para o comentário
Compartilhar em outros sites

4 minutos atrás, angeloroberto disse:

pior q a query ja ta como update

 

 

Pois eu vi, mande o seu trabalho e a BD para este mail: [email protected] e eu tento fazer qlq coisa e dps mando pra você se quiser que eu tmb n tenho nada pra fazer kkkkkk

 

Mas você só quer que passe para cancelado no status né? sem eliminar nada na BD?

 

Link para o comentário
Compartilhar em outros sites

2 horas atrás, David Martinho disse:

 

Pois eu vi, mande o seu trabalho e a BD para este mail: [email protected] e eu tento fazer qlq coisa e dps mando pra você se quiser que eu tmb n tenho nada pra fazer kkkkkk

 

Mas você só quer que passe para cancelado no status né? sem eliminar nada na BD?

 

issoo. Quero que continue o registro porém q o status mude para cancelado

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário 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

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!