PHP - RESTAR UN REGISTRO EN PHP HASTA LLEGAR A 0 LUEGO PASAR AL SIGUIENTE REGISTRO PHP

 
Vista:
Imágen de perfil de JHIN EDINSON

RESTAR UN REGISTRO EN PHP HASTA LLEGAR A 0 LUEGO PASAR AL SIGUIENTE REGISTRO PHP

Publicado por JHIN EDINSON (1 intervención) el 12/02/2018 15:21:25
Hola Estimados Amigos buenos dias.
estoy hasciendo un aplicativo de cuentas por pagar con PHP y MYSQL, en el cual tengo dos formas de poder realizar los pagos de factura.

EL PRIMERO(PAGOS INDIVIDUALES), es de forma individual seleccionas las FACTURA o comprobante y resta todo bien.

SEGUNDO(PAGOS MULTIPLES): hay una tabla que lista las facturas de un determinado proveedor, al costado un CHECKBOX, luego este selecciona todas las facturas y pasan el ID_DEUDA por metodo POST, en forma de array, en la otra pagina ABONOS.PHP, recibo el ARRAY con FOREACH, y todo bien recorre todos los registros seleccionados por el CHECKBOX.

EL PROBLEMA, es que dentro de la estructura repetitiva estoy queriendo, hacer que se vaya restado el campo SALDO, registro por registro, una ves llegado a 0, pasar al otro registro, y asi sucesivamente.

se que se puede e intentado hacerlo pero tal ves me falta aprender mas sobre estructuras repetitivas.

este es mi codigo que procesa el pago a las facturas.

<?php
$fecha_pago=$_POST['txtfecha_pago'];
$banco=$_POST['lstbanco'];
$moneda=$_POST['lstmoneda'];
$importe_pago=$_POST['txtimporte_pago'];
$medio_pago=$_POST['lstmedio_pago'];
$numero_operacion=$_POST['txtnumero_operacion'];
$estado_pago=1;

$cant_ID=count($_POST['chkdeudas']);//Captura y Cuenta Cantidad de ID
$importe_individual=($importe_pago/$cant_ID);
$bandera=true;
foreach($_POST['chkdeudas'] as $cod_deuda)
//echo $cant_ID;
{
//echo $cod_deuda.'</br>';-->Imprime Los ID de Deuda OK
//HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
$sel_tbdeudas=$rset->query("SELECT * FROM tbproveedor P INNER JOIN tbdeudas_proveedores D ON P.id_proveedor=D.id_proveedor WHERE id_deuda='$cod_deuda' AND estado_comprobante=1");
$rows_deuda=mysqli_fetch_array($sel_tbdeudas);
$cod_proveedor=$rows_deuda['id_proveedor'];

$saldo_deuda=$rows_deuda['saldo'];//Operar lo Importante(Reto)


if ($saldo_deuda > 0){
$nuevo_saldo=($saldo_deuda-$importe_pago)-$nuevo_saldo;
}


$Actualiza_Deuda=$rset->query("UPDATE tbdeudas_proveedores SET saldo='$nuevo_saldo' WHERE id_deuda='$cod_deuda'");
//HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
$guarda_cuenta_pagar=$rset->query("INSERT INTO tbpagos_proveedores (id_deuda,id_proveedor,fecha_pago,medio_pago,banco,nro_operacion, importe_pago,moneda_pago,estado_pago) VALUES ('$cod_deuda','$cod_proveedor','$fecha_pago','$medio_pago','$banco','$numero_operacion','$importe_individual','$moneda','$estado_pago')");

echo "<script language='javascript'>alert('ABONO REALIZADO CON EXITO! ');window.location.href='lista_cuentas_x_pagar.php';</script>";
}
?>

espero de su ayuda
OK
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder