Tengo una consulta a la db, que arrojará distintas rows.
Para cada una de ellas, deberé ejecutar otras consultas, pero eso me genera un error.
Es para una función del tipo "undo" en un programa de contabilidad:
¿Cuál sería la forma correcta de hacerlo? Lo que hago, y sólo ejecuta el código para el primer registro obtenido de la consulta madre, es lo siguiente:
Código:
<? $result = mysql_query("select * from luga_libro_diario where id_operacion='$id_operacion'", $conexion); while ($row=mysql_fetch_array($result)) { $debe=$row['debe']; $haber=$row['haber']; $cuenta=$row['cuenta']; $id_empleado=$row['id_empleado']; $id_operacion=$row['id_operacion']; $id_carpeta=$row['id_carpeta']; $id_clipro=$row['id_clipro']; $id_repuesto=$row['id_repuesto']; $cantidad_repuesto=$row['cantidad_repuesto']; switch ($cuenta) { case "Cuenta Corriente": $sql_01="update luga_clipro set saldo=saldo+$debe where id=$id_clipro"; $result = mysql_query($sql_01, $conexion); break; case "Acreedores varios": $sql_02="update luga_clipro set saldo=saldo-$haber where id=$id_clipro"; $result = mysql_query($sql_02, $conexion); break; case "Mercaderías (0km)": $sql_03="update luga_carpetas set estado='activo' where id='$id_carpeta'"; $result = mysql_query($sql_03, $conexion); break; case "Mercaderías (usados)": $sql_04="update luga_carpetas set estado='activo' where id='$id_carpeta'"; $result = mysql_query($sql_04, $conexion); break; case "Mercaderías (consignaciones)": $sql_05="update luga_carpetas set estado='activo' where id='$id_carpeta'"; $result = mysql_query($sql_05, $conexion); break; } if ($debe!="0") { $sql_06="update luga_cuentas set saldo=saldo-$debe where cuenta='$cuenta'"; $result = mysql_query($sql_06, $conexion);} if ($haber!="0") { $sql_07="update luga_cuentas set saldo=saldo+$haber where cuenta='$cuenta'"; $result = mysql_query($sql_07, $conexion); } if ($id_repuesto!="0") { $sql_08="update luga_repuestos set stock=stock+$cantidad_repuesto where id_repuesto='$id_repuesto'"; $result = mysql_query($sql_08, $conexion); } $sql_09="delete from luga_cheques where id_operacion='$id_operacion'"; $result = mysql_query($sql_09, $conexion); $sql_10="delete from luga_documentos where id_operacion='$id_operacion'"; $result = mysql_query($sql_10, $conexion); $sql_11="delete from luga_libro_diario where id_operacion='$id_operacion'"; $result = mysql_query($sql_11, $conexion); } ?>
Gracias anticipadas.