Recommended Posts

Есть скрипт кредитный калькулятор.

http://mirzhilya.96.lt/kalkulator.php

Но он работает вне движка sitebill. Вопрос как сделать чтоб он работал на одной из страниц сайта. 

 

А вот сам код скрипта:
<?phperror_reporting(0);$allow_month_count = array(6, 9, 12,24);$allow_month = array(   1=> 'Январь',   2=> 'Февраль',   3=> 'Март',   4=> 'Апрель',   5=> 'Май',   6=> 'Июнь',   7=> 'Июль',   8=> 'Август',   9=> 'Сентябрь',   10=> 'Октябрь',   11=> 'Ноябрь',   12=> 'Декабрь');$allow_calc = false;$sum_kredita = '';$procent = 12;$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 = 12;   }   $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 .'"> (100 000 - ... рублей)<br>Процентная ставка, %:<br><input name="procent" type="text" value="'. $procent .'"> (разделитель дробной части - точка ".", например 11.7)<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');   //$month = array('янв', 'фев', 'мар', 'апр', 'май', 'июн', 'июл', 'авг', 'сен', 'окт', 'ноя', 'дек');   //текущий год   $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;   //print_r($per_month);   //print_r($osn_dolg);   $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);   //порядок по 24 месяцам   $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++;      }   }   //print_r($month_kred);   //print_r($month_kred_out);   //die;   //проверка года на високосность   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;   }   /*   print_r($proc_pogash);   echo array_sum($proc_pogash);   print_r($vsego);   echo array_sum($vsego);   print_r($day_month);   */    $output .= '<br><br>';    $output .= sprintf('Сумма кредита: %s рублей; Процентная ставка: %01.2f; Срок: %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><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 . '</div></td></tr></table></td></tr></table></body></html>';echo $tpl;?>

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Как примерно собираетесь им пользоваться? Он будет сферически в вакууме висеть на каком-то адресе или более оригинально?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Можно в /template/frontend/agency/main/main.php в функции main() добавить обработку

		if ( preg_match('/^kreditcalculator(\/?)$/', $REQUESTURIPATH) ) {тут код калькулятора.а вместо echo $tpl; сделать$this->template->assert('main', $tpl);$has_result=true;		}

И теперь на сайте обращаться к нему по адресу /kreditcalculator/

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

И теперь на сайте обращаться к нему по адресу /kreditcalculator/

 

Вот это пример использования "сферически в вакууме" )))

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Похожие публикации

    • Автор: Chernetskiy
      Где-то уже писал про сервис Unicom24, но повторюсь, чтобы дальнейшее было более понятным
      Сервис Unicom24 объединяет с полсотни банков, предоставляющих потребительские кредиты и ипотеку, кроме того объединяет не меньшее количество страховых организаций. ООО или ИП могут зарегистрироваться в данном сервисе - сайт www.unicom24.ru и фактически стать кредитным и страховым брокером (приятная прибавка к пенсии ).
      Каждому брокеру заводится личный кабинет на rc.financemart.ru, ссылку на который можно повесить на свой сайт и ваши клиенты могут самостоятельно размещать заявки на ипотеку от вашего имени, полностью заполняя необходимые формы без вашего участия. Вам приходит уведомление о размещенной заявке, а в случае её одобрения и совершения сделки с ипотекой, вам перепадает процентик от банка
       
      Теперь Unicom24 разработал плагин отправки заявок на кредит, который вы можете разместить на своем сайте, подробности на https://unicom24.ru/help/b2b_plugin_help/. Может быть есть смысл взглянуть на него разработчикам (подразумевается небольшая доработка) и централизовано заменить встроенную в скрипт форму подачи заявки на ипотеку данным плагином? Чтобы каждому в отдельности не ковырять скрипт ручками. Сервис отработан, формы заявок и их позиции согласованы с банками, минимум рутины и максимум отдачи. Обмен информацией происходит по защищенному соединению.
       
      *Извиняюсь за открытые ссылки, поскольку из IE.11 ссылки (да вообще ничего) сюда скопировать не получается и закрытыми их сделать тоже ("добавить ссылку" завешивает проводник), все приходится писать ручками. Если админ поправит, не обижусь.
    • Автор: Futuris
      Интересную статью нашел, где рассказывают про то, как взяв ипотеку, к примеру на 950 тыс. гривен(около 3 850 000 рублей), что бы купить двух-комнатную квартиру в Киеве (60 м2), ты будешь переплачивать 80% за 10 лет. То есть, это около 750 тыс грн. (3 000 000 рублей). Это так?

      Сама ссылка на статью: 
       
      http://www.prostobank.ua/zhile_v_kredit/stati/gde_predlagayut_zaymy_na_zhile_pod_11_12_godovyh_obzor_rynka_ipotechnogo_kreditovaniya_na_9_sentyabrya_2013_goda
    • Автор: Дмитрий Кондин
      http://www.irn.ru/calc/ - профессиональный калькулятор
      http://www.gazprombank.ru/calcs/ipo/ - калькулятор Газпромбанка, проценты там мама не горюй...
      http://www.ipohelp.ru/calculator.html - мало кнопочек зато всю правду расскажет
      http://www.calc.ru/ipotechnyj-kalkulyator.html - еще один простой калькулятор
      http://www.ipotek.ru/vidjet_vseh_plateji_po_creditu.php - а вот тут код калькулятора можно взять себе на сайт
      http://www.alfabank.ru/retail/mortgage/calculator/ - от Альфа-Банка
      http://www.deltacredit.ru/calculator/ - Дельта-Кредит
      http://www.raiffeisen.ru/retail/mortgageloans/calculator/ - РайффайзенБанк
      http://www.nomos.ru/ipoteka_calc/ - Номос Банк
      http://sberbank.ru/moscow/ru/person/credits/home/ - У Сбербанка калькулятора не нашел, но как же тут без него. Просто ссылка на кредитные программы.