Ir para conteúdo
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.

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 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!
    • Por 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"); } ?>  
    • Por 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"; }
×

Informação importante

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