New Transaction : '.$GLOBALS['post_info'].'
| Name |
Phone |
AC No |
Remaining Amount |
Installment |
';
$conn = new mysqli($GLOBALS['host'], $GLOBALS['user'], $GLOBALS['pass'], $GLOBALS['db']);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT * FROM `".$GLOBALS['arif_ac']."` WHERE `AA_ACNO` = '".$_GET["no"]."' ";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
$date1 = date_create($row["AA_DATE"]);
$date2 = date_create(date("Y/m/d"));
$diff = date_diff($date1, $date2);
if ($row["AA_ACTYPE"] == 'D'){$diff = $diff->format("%a"); $diff=(int)$diff;$due_i=$diff-$row["AA_NO_OF_PAYPAID"];} else {$diff=$diff->format("%m"); $diff=(int)$diff;$due_i=$diff-$row["AA_NO_OF_PAYPAID"];}
//$ID=$row["GC_ID"];
echo "
| ".$row["AA_NAME"]." |
".$row["AA_PHONE"]." |
".$row["AA_ACNO"]." |
".$row["AA_BAL"]. ' |
|
';
}
} else {echo "Check A/C no.";};
$conn->close();
echo '
';
}
if(isset($_GET["no"]) && isset($_GET["type"])&&$_GET["type"]=="Recurring"){
echo '
New Transaction : '.$GLOBALS['post_info'].'
| Name |
Phone |
AC No |
Total Deposit |
Installment |
Receive Amount |
';
$conn = new mysqli($GLOBALS['host'], $GLOBALS['user'], $GLOBALS['pass'], $GLOBALS['db']);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT * FROM `".$GLOBALS['arif_ac']."` WHERE `AA_ACNO` = '".$_GET["no"]."' ";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
$date1 = date_create($row["AA_DATE"]);
$date2 = date_create(date("Y/m/d"));
$diff = date_diff($date1, $date2);
if ($row["AA_ACTYPE"] == 'D'){$diff = $diff->format("%a"); $diff=(int)$diff;$due_i=$diff-$row["AA_NO_OF_PAYPAID"];} else {$diff=$diff->format("%m"); $diff=(int)$diff;$due_i=$diff-$row["AA_NO_OF_PAYPAID"];}
//$ID=$row["GC_ID"];
$CURRENT_RECURRING_BALANCE = $row["AA_BAL"];
echo "
| ".$row["AA_NAME"]. " |
".$row["AA_PHONE"]. " |
".$row["AA_ACNO"]." |
".$row["AA_BAL"]. " |
".$row["AA_INSTALLMENT"]. ' |
|
';
}
} else {echo "Check A/C no.";};
$conn->close();
echo '
';
}
?>
connect_error) {
die("Connection failed: " . $conn->connect_error);
}
// ✅ Check recurring balance first
$sql = "SELECT AA_BAL FROM `" . $GLOBALS['arif_ac'] . "` WHERE `AA_ACNO` = ?";
$stmt = $conn->prepare($sql);
$stmt->bind_param("s", $accountId);
$stmt->execute();
$stmt->bind_result($CURRENT_RECURRING_BALANCE);
$stmt->fetch();
$stmt->close();
if ($loanEMIAmount > $CURRENT_RECURRING_BALANCE) {
echo "
Error! Insufficient balance in Recurring account.
×
";
exit;
}
// ✅ Begin transaction for atomicity
$conn->begin_transaction();
try {
$table = $GLOBALS['arif_tran'] ?? 'arif_tran';
$userType = 'admin';
// Entry 1: Deduction from recurring
$remarksText1 = "₹$loanEMIAmount deducted from Recurring for Loan A/c $paidToLoanAccountNumber EMI";
$stmt = $conn->prepare("INSERT INTO `$table` (AT_ADMIN, AT_ACID, AT_AMOUNT, REMARKS) VALUES (?, ?, ?, ?)");
$stmt->bind_param("ssds", $userType, $accountId, $deductAmount, $remarksText1);
$stmt->execute();
$stmt->close();
// Entry 2: Credit to loan account
$remarksText2 = "₹$loanEMIAmount credited to Loan A/c $paidToLoanAccountNumber EMI (from Recurring $accountId)";
$stmt = $conn->prepare("INSERT INTO `$table` (AT_ADMIN, AT_ACID, AT_AMOUNT, REMARKS) VALUES (?, ?, ?, ?)");
$stmt->bind_param("ssds", $userType, $paidToLoanAccountNumber, $loanEMIAmount, $remarksText2);
$stmt->execute();
$stmt->close();
// Update Loan Account
$ins_no = 1;
$sql = "UPDATE `" . $GLOBALS['arif_ac'] . "` SET `AA_BAL` = `AA_BAL` + ?, `AA_NO_OF_PAYPAID` = `AA_NO_OF_PAYPAID` + ? WHERE `AA_ACNO` = ?";
$stmt = $conn->prepare($sql);
$stmt->bind_param("dis", $loanEMIAmount, $ins_no, $paidToLoanAccountNumber);
$stmt->execute();
$stmt->close();
// Update Recurring Account
$sql = "UPDATE `" . $GLOBALS['arif_ac'] . "` SET `AA_BAL` = `AA_BAL` - ? WHERE `AA_ACNO` = ?";
$stmt = $conn->prepare($sql);
$stmt->bind_param("ds", $loanEMIAmount, $accountId);
$stmt->execute();
$stmt->close();
// ✅ Commit if everything ok
$conn->commit();
echo "
Success! Loan EMI paid successfully!
×
";
} catch (Exception $e) {
$conn->rollback();
echo "Error processing EMI payment: " . $e->getMessage();
}
$conn->close();
}
}
?>
Past Transactions::::
| SL |
Tr No |
TimeStamp |
User |
A/C No |
Amount |
';
$conn = new mysqli($GLOBALS['host'], $GLOBALS['user'], $GLOBALS['pass'], $GLOBALS['db']);
if ($conn->connect_error) die("Connection failed: " . $conn->connect_error);
// $sql = "SELECT * FROM `".$GLOBALS['arif_tran']."` WHERE `AT_ACID` = '".$_GET['no']."'";
$sql = "SELECT * FROM `".$GLOBALS['arif_tran']."` WHERE `AT_ACID` = '".$_GET['no']."' ORDER BY `".$GLOBALS['arif_tran']."`.`AT_ID` DESC";
$result = $conn->query($sql);
$rowcount=mysqli_num_rows($result);//$rowcount++;
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
//$ID=$row["GC_ID"];
echo "
| ".$rowcount. " |
".$row["AT_ID"]. " |
".$row["AT_TIMESTAMP"]. " |
".$row["AT_ADMIN"]. " |
".$row["AT_ACID"]. " |
".$row["AT_AMOUNT"]. " |
";
$rowcount--;
}
} else echo "No Past record Found";
mysqli_free_result($result);$conn->close();
echo '
';
}
?>