<?php
error_reporting(0);
$allow_month_count = array(6, 9, 12, 24, 36, 48, 60, 72, 84);
$allow_month = array(
1=> 'Январь',
2=> 'Февраль',
3=> 'Март',
4=> 'Апрель',
5=> 'Май',
6=> 'Июнь',
7=> 'Июль',
8=> 'Август',
9=> 'Сентябрь',
10=> 'Октябрь',
11=> 'Ноябрь',
12=> 'Декабрь'
);
$allow_calc = false;
$sum_kredita = '';
$procent = 15;
$month_count = '';
$num_first_month = (int)date('n');;
if (isset($_REQUEST['sum_kredita']) and isset($_REQUEST['procent']) and
isset($_REQUEST['month_count']) and isset($_REQUEST['month_first']) ) {
$sum_kredita = (int)$_REQUEST['sum_kredita'];
if ($sum_kredita < 100000 or $sum_kredita > 100000000) {
$sum_kredita = 100000;
}
$procent = (float)$_REQUEST['procent'];
if ($procent <= 0 or $procent > 100) {
$procent = 15;
}
$month_count = (int)$_REQUEST['month_count'];
$num_first_month = (int)$_REQUEST['month_first'];
$allow_calc = true;
} else {
$allow_calc = false;
}
$srok_opt = '';
foreach ($allow_month_count as $m) {
if ($month_count == $m) {
$srok_opt .= "<option value=\"$m\" selected>$m месяцев</option>";
} else {
$srok_opt .= "<option value=\"$m\">$m месяцев</option>";
}
}
$m_opt = '';
foreach ($allow_month as $k => $m) {
if ($num_first_month == $k) {
$m_opt .= "<option value=\"$k\" selected>$m</option>";
} else {
$m_opt .= "<option value=\"$k\">$m</option>";
}
}
$output = '';
$output .= '<form name="credit" action="" method="post">
Сумма кредита, грн:<br>
<input name="sum_kredita" type="text" value="'. $sum_kredita .'"> (Введите сумму в гривнах.)<br>
Процентная ставка, %:<br>
<input name="procent" type="text" value="'. $procent .'"> (Введите вашу процентную ставку.)<br>
Срок кредита:<br>
<select size="1" name="month_count">
'. $srok_opt .'
</select><br>
Месяц получения кредита:<br>
<select size="1" name="month_first">
'. $m_opt .'
</select><br><br>
<input type="submit" value="Рассчитать">
</form>';
if ($allow_calc) {
$month = array('01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12');
$year = (int)date('Y', time());
$pogash_osn_dolga = round($sum_kredita / $month_count);
$last_month = $sum_kredita - $pogash_osn_dolga * ($month_count - 1);
$per_month = array();
$sum_kred_temp = $sum_kredita;
for ($i = 0; $i < $month_count - 1; $i++) {
$per_month[] = $pogash_osn_dolga;
$osn_dolg[] = $sum_kredita - $pogash_osn_dolga * $i;
}
$per_month[] = $last_month;
$osn_dolg[] = $last_month;
$first = array_slice($month, 0, $num_first_month - 1);
$last = array_slice($month, $num_first_month - 1);
$first_out = array_slice($month, 0, $num_first_month);
$last_out = array_slice($month, $num_first_month);
$month_order = array_merge($last, $first);
$month_order_out = array_merge($last_out, $first_out);
$month_order = array_merge($month_order, $month_order);
$month_order_out = array_merge($month_order_out, $month_order_out);
$year_out = $year;
$month_kred = array();
$month_kred_out = array();
for ($i = 0; $i <= $month_count - 1; $i++) {
$month_kred[] = array($month_order[$i], $year);
$month_kred_out[] = array($month_order_out[$i], $year_out);
if ($month_order[$i] == 12) {
$year++;
}
if ($month_order_out[$i] == 12) {
$year_out++;
}
}
function is_leap($year = NULL) {
return checkdate(2, 29, ($year == NULL)? date('Y') : $year);
}
$proc_pogash = array();
$vsego = array();
for ($i = 0; $i < $month_count; $i++) {
(is_leap($month_kred[$i][1])) ? $days_in_year = 366 : $days_in_year = 365;
$num = cal_days_in_month(CAL_GREGORIAN, $month_kred[$i][0], $month_kred[$i][1]);
$day_month[] = array($num, implode($month_kred_out[$i], '.'));
$proc_pogash_i = Round(($osn_dolg[$i] * ($procent / 100)) / $days_in_year * $num);
$proc_pogash[] = $proc_pogash_i;
$vsego[] = $per_month[$i] + $proc_pogash_i;
}
$output .= '<br><br>';
$output .= sprintf('Сумма кредита: %s грн; Процентная ставка: %15.0f; Срок: %s мес. ', number_format($sum_kredita, 0, '.', ' '), $procent, $month_count) ;
$output .= '<br><br>';
$out = '<table class="credit">';
$out .= '<tr><th>Месяц</th><th>Кол-во дней</th><th>Остаток основного долга, грн</th><th>Погашение долга, грн</th><th>Процент, грн</th><th>Всего, грн</th></tr>';
for ($i = 0; $i < $month_count; $i++) {
$out .= sprintf('<tr><td>%s</td><td>%s</td><td>%s</td><td> ;%s</td><td>%s</td><td>%s</td></tr>',
$day_month[$i][1], $day_month[$i][0], $osn_dolg[$i], $per_month[$i], $proc_pogash[$i], $vsego[$i]);
}
$out .= sprintf('<tr><td colspan="3"><b>Итого:</b></td><td><b>%s</b></td&a mp;g t;<td><b>%s</b></td><td><b>%s</b></td></tr>' ;,
number_format(array_sum($per_month), 0, '.', ' '), number_format(array_sum($proc_pogash), 0, '.', ' '), number_format(array_sum($vsego), 0, '.', ' '));
$out .= '</table>';
$output .= $out;
}
$tpl = '
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Название странички</title>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1251">
<style type="text/css">
a:active,a:visited,a:link {
color: #4b719e;
text-decoration:none;
}
a:hover {
color: #4b719e;
text-decoration: underline;
}
.title {
color: #333333;
font-size: 26px;
font-family: georgia;
font-weight: normal;
padding-left: 6px;
}
.text {
font-family:Tahoma;
font-weight:normal;
font-size:12px;
color:#365069;
}
hr {
width: 100%;
height: 1px;
border: 0;
background: #B9D2E2;
color: #B9D2E2
}
table.credit {
width:100%;
border:1px solid #c0c0c0;
background-color:#ffffff;
}
table.credit tr {
background-color:#f8f8f8;
}
table.credit tr:hover {
background-color:#ffffff;
}
table.credit td{
padding:1px;
text-align:right;
}
table.credit th{
border:0px;
color:#333333;
background-color:#D5E7F3;
padding:2px;
text-align:center;
font-size:12px;
}
</style>
</head>
<body>
<table width="750" align="center" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="100%" height="30" align="center" valign="middle" style="border-left: 1px solid #D5E7F3; border-right: 1px solid #D5E7F3; border-top: 1px solid #D5E7F3;" bgcolor="#D5E7F3">
<span class="title">Название странички</span>
</td>
</tr>
</table>
<table width="750" align="center" border="0" cellspacing="1" cellpadding="0" bgcolor="#D5E7F3" class="text">
<tr>
<td>
<table width="100%" border="0" cellspacing="0" cellpadding="0" bgcolor="#f5f8fa"><tr>
<td width="100%" style="padding-top:25px; padding-right:20px; padding-left:20px;" valign="top"><div class="text">
' . $output . '
<br><br><br><br>
<hr>
<a href="http://Ваш сайт">Вернуться на главную страницу</a>
</div><br><br><br></td></tr></table>
<table width="100%" cellspacing="0" cellpadding="3" border="0" bgcolor="#F4FBFF" class="text" style="border-top:1px solid #B9D2E2">
<tr>
<td width="50%" nowrap>Название компаниии</td><td width="100%"> </td>
<td width="50%" nowrap>Тел</td>
</tr>
</table>
</td>
</tr>
</table>
</body>
</html>
';
echo $tpl;
?>