I tested your code, except that I changed $POST to $GET in order to use the query string.
I didnt get any errors with error reporting set at E_ALL, after correcting your typo.
I'd say that the problem is probably because pow() requires numbers, while numeric strings are entered.
A solution is to typecast the variables, e.g.
<?php
$LoanAmt = $_POST["LoanAmount"];
$IntrRate = $_POST["InterestRate"];
$duration = $_POST["NumMonths"];
if (is_numeric($LoanAmt) && is_numeric($IntrRate) && is_numeric($duration))
{
$IntrRate /= 1200; // divided by 100, then by 12
$Payment1 = $LoanAmt * $IntrRate;
$IntrRate++;
$Payment2 = pow((float)$IntrRate, (int)$duration); //typecast
($Payment2 != 1) ? ($Payment2 /= $Payment2 - 1) : die('Division by zero');
$MonthlyPayment = $Payment1 * $Payment2;
echo 'Monthly Payment: ' . $MonthlyPayment;
}
else
{
echo "Please enter only numeric values";
}
?>
I did simplify your code in order to remove redundant calculations and expressions.