Jump to content
gersonab

deletar único item de uma categoria do orçamento e recalcular a mesma para valor 0

Recommended Posts

boa tarde, preciso excluir o item de uma categoria do orçamento e manter a mesma com valor zerado, este se for único não consigo, porém se tiver mais de um funciona fazendo um novo calculo e update .

tipo:

  • categoria 1 - valor R$ 100,00
    • item 1 - valor R$ 50,00
    • item 2 - valor R$ 50,00

se deletar um dos itens :

  • categoria 1 - valor R$ 50,00
    • item 1 - valor R$ 50,00

até aí tranquilo, porém se tiver somente um item :

  • categoria 1 - valor R$ 50,00
    • item 1 - valor R$ 50,00
    após deletar este
  • categoria 1 - valor R$ 50,00
precisaria q ficasse assim ?
  • categoria 1 - valor R$ 0,00
<?php

if(!empty($_GET)) {
$idorc=$_GET['idorc'];

$sql = $pdo->query("SELECT * FROM orcamento WHERE idorc = $idorc");
$user = $sql->fetch(PDO::FETCH_ASSOC);
$orc = $user['orc'];
$id = $user['idcatc'];

$fallback = '../adm/orcamento.php?idocl=$orc';
$anterior = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : $fallback;

$sql = "DELETE FROM orcamento WHERE idorc =  :idorc";
$stmt = $pdo->prepare($sql);
$stmt->bindParam(':idorc', $idorc, PDO::PARAM_INT);   
if ($stmt->execute() === false){
		echo "<pre>";
		print_r($stmt->errorInfo());
	}
	
$consulta = $pdo->query("SELECT colunas da tabela FROM orcamento WHERE orc=$orc AND idcatc = $id");
				$user331 = $consulta31->fetch(PDO::FETCH_ASSOC);
				// dados das colunas
				
				$stmt=$pdo->prepare("UPDATE categoria SET valor = :valor WHERE id = :id"); 
				$stmt->bindValue(':valor',$valor);
				$stmt->bindParam(':id',$id, PDO::PARAM_INT);
				if ($stmt->execute() === false){
					echo "<pre>";
					print_r($stmt->errorInfo());
				}
	} else {
	
}
header("location: {$anterior}");
exit;
?>

espero q tenham entendido.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By Agnosticado
      Estou tentando mostrar os dias (em sequencia) e a quantidade de um tipo de registros gravados naquele dia. 
      Consegui escrever um select onde tenho os dias sequenciados MAS quando o dia não tem registros do tipo específico este dia não aparece no resultado
      SELECT tipo, COUNT(*) AS total, DATE_FORMAT(data_registro, '%d') AS dia FROM tbl_tabela WHERE data_registro BETWEEN '2019-11-01' AND '2019-11-31'  AND tipo  = '1' GROUP BY dia resultado
      dia - total
      01  - 10
      02 -  4
      03 - 19
      06 - 3
      07 - 27
       
       eu precisava listar também os dias que o resultado fosse ZERO registros sem pular dias.
       
      dia - total
      01 - 10
      02 - 04
      03 - 19
      04 - 0
      05 - 0
      06 - 3
      07 - 27
       
      também TENTEi o select abaixo, mas obtive o mesmo resultado
       
      SELECT DAY(data_registro) dia,      COUNT(*) FROM     tbl_tabela WHERE     MONTH(data_registro) = 11 AND tipo = '1'  GROUP BY dia ORDER BY dia
      :(
       
      Alguém pode me dá uma dica de como listar também os dias sem registros informando como valor 0?
       
      AGRADEÇO A GENTILEZA, AMIGOS!
    • By Conrado Mirto
      Não Estou Conseguindo logar no Sistema ja refiz o codigo e não descobri o erro
       
      CONEXAO.PHP
      <?php $servidor = "localhost"; $usuario = "root"; $senha = ""; $dbname = "globalservidores"; //Criar a conexão $conn = mysqli_connect($servidor, $usuario, $senha, $dbname); if(!$conn){ die("Falha na conexao: " . mysqli_connect_error()); }else{ //echo "Conexao realizada com sucesso"; } ?>  
      LOGIN.PHP
      <?php session_start(); ?> <!DOCTYPE html> <html lang="pt-br"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="description" content=""> <meta name="author" content="Cesar Szpak - Celke"> <link rel="icon" href="imagens/favicon.ico"> <title>Area Restrita</title> <link href="css/bootstrap.css" rel="stylesheet"> <link href="css/ie10-viewport-bug-workaround.css" rel="stylesheet"> <link href="css/signin.css" rel="stylesheet"> <script src="js/ie-emulation-modes-warning.js"></script> </head> <body> <div class="container"> <form class="form-signin" method="POST" action="valida.php"> <h2 class="form-signin-heading">Área Restrita</h2> <label for="inputEmail" class="sr-only">Usuário</label> <input type="email" name="txt_usuario" id="inputEmail" class="form-control" placeholder="Usuário" required autofocus> <label for="inputPassword" class="sr-only">Senha</label> <input type="password" name="txt_senha" id="inputPassword" class="form-control" placeholder="Senha" required> <button class="btn btn-lg btn-danger btn-block" type="submit">Acessar</button> <p class="text-center text-danger"> <?php if(isset($_SESSION['loginErro'])){ echo $_SESSION['loginErro']; unset ($_SESSION['loginErro']); }?> </p> <p class="text-center text-success"> <?php if(isset($_SESSION['loginDeslogado'])){ echo $_SESSION['loginDeslogado']; unset ($_SESSION['loginDeslogado']); }?> </p> </form> </div> <!-- /container --> <script src="js/ie10-viewport-bug-workaround.js"></script> </body> </html>  
      VALIDA.PHP
      <?php session_start(); include_once("conexao/conexao.php"); //Verifica se os campos possuem dados if((isset($_POST['txt_usuario'])) && (isset($_POST['txt_senha']))){ $usuario = mysqli_real_escape_string($conn, $_POST['txt_usuario']); //Escapar de caracteres especiais, como aspas, prevenindo SQL injection $senha = mysqli_real_escape_string($conn, $_POST['txt_senha']); $senha = md5($senha); $result_usuario = "SELECT * FROM usuarios WHERE email = '$usuario' && senha = '$senha'"; $resultado_usuario = mysqli_query($conn, $result_usuario); $resultado = mysqli_fetch_assoc($resultado_usuario); //Encontrando um usuário na tabela usuario com os mesmos dados digitado pelo usuario if(isset($resultado)){ $_SESSION['usuarioId'] = $resultado['id']; $_SESSION['usuarioNome'] = $resultado['nome']; $_SESSION['usuarioNiveisAcessoId'] = $resultado['niveis_acesso_id']; $_SESSION['usuarioEmail'] = $resultado['email']; if($_SESSION['usuarioNiveisAcessoId'] == "1"){ header("Location: administrativo.php"); }elseif($_SESSION['usuarioNiveisAcessoId'] == "2"){ header("Location: colaborador.php"); }elseif($_SESSION['usuarioNiveisAcessoId'] == "3"){ header("Location: cliente.php"); }else{ $_SESSION['loginErro'] = "Erro - Entre em contato cesar@celke.com.br"; header("Location: index.php"); } }else{ $_SESSION['loginErro'] = "Usuário ou senha inválido"; header("Location: index.php"); } }else{ $_SESSION['loginErro'] = "Usuário ou senha inválido"; header("Location: index.php"); } ?>  
    • By Luciano Zanita
      Olá caros amigos, estou tentando fazer um multiplo Where nesta consulta pelo seguinte fator:
      1. existem vários resultados para o mesmo rad_username
      2. Mais somente um com status = 1
      Gostaria de selecionar ele em especifico, lembrando que terá outras rad_username diferente no meio, como posso proceder para fazer isto?
      fiz este código mais não consigo isolar o código em especifico.
      Alguém pode me dar uma ajuda?
      $sql223 = "SELECT * FROM playlist WHERE rad_username='$cheat254' AND status='1'"; $result = @mysql_query($sql223) or die("Erro ao receber a playlist"); while($rowplay=@mysql_fetch_array($result)){ $playlistnome= $rowplay[pname]; $arquivoautodj .= "playlistfile=/".$path."/".$cheat254."/radio/playlist/".$playlistnome.".lst"; }
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.