Ребят, всем привет. Я тут новенький. Случайно наткнулся на вас и надеюсь на вашу помощь. Такое дело, нужно сделать калькулятор расчета пептидов как на этом сайте : http://ghrp.com.ua/calc Никак не пойму, как сделать подобное. У кого есть варианты и кто может помочь, буду благодарен.
Как минимум вы должны знать формулу, по которой это рассчитывается. Хотя мне что-то подсказывает, что формула там простейшая (4 числа на входе, что-то из них надо перемножить и разделить на все остальные). Если не запариваться с дизайном и красивой шкалой, то задача на 5 минут.
Код (PHP): <?php $values = http_build_query(array( 'step_one' => isset($_POST['step_one']) ? $_POST['step_one'] : '0', 'step_two' => isset($_POST['step_two']) ? $_POST['step_two'] : '0', 'step_tree' => isset($_POST['step_tree']) ? $_POST['step_tree'] : '0', 'step_four' => isset($_POST['step_four']) ? $_POST['step_four'] : '0' )); if(isset($_POST['valide'])) exit("<script>location.href = 'http://ghrp.com.ua/calc/index.php'</script>"); $head = array('http' => array( 'method' => 'POST', 'header' => 'Content-type: application/x-www-form-urlencoded', 'content' => $values, ) ); $url = 'http://ghrp.com.ua/calc/index.php'; $context = stream_context_create($head); $htmlcode = file_get_contents($url, false, $context); function getSubstr($htmlcode, $str_in, $str_end) { $pos_in = strpos($htmlcode, $str_in); $pos_out = strpos($htmlcode, $str_end, $pos_in); return substr($htmlcode, $pos_in, $pos_out-$pos_in); } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <meta name="SKYPE_TOOLBAR" content="SKYPE_TOOLBAR_PARSER_COMPATIBLE" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <link href="http://fonts.googleapis.com/css?family=Open+Sans:400,600,700&subset=latin,cyrillic" media="screen" rel="stylesheet" type="text/css" /> <link href="http://ghrp.com.ua/var/themes/calc/skin/css/frame.css" media="screen" rel="stylesheet" type="text/css" /> <link href="http://ghrp.com.ua/var/themes/calc/skin/css/main.css" media="screen" rel="stylesheet" type="text/css" /> <link href="http://ghrp.com.ua/var/themes/calc/skin/css/standart.form.css" media="screen" rel="stylesheet" type="text/css" /> <link href="http://ghrp.com.ua/var/themes/calc/skin/css/standart.table.css" media="screen" rel="stylesheet" type="text/css" /> <link href="http://ghrp.com.ua/var/themes/calc/skin/js/fancybox/source/jquery.fancybox.css?v=2.0.6" media="screen" rel="stylesheet" type="text/css" /> <link href="http://ghrp.com.ua/var/themes/calc/skin/js/fancybox/source/helpers/jquery.fancybox-buttons.css?v=1.0.2" media="screen" rel="stylesheet" type="text/css" /> <link href="http://ghrp.com.ua/var/themes/calc/skin/js/fancybox/source/helpers/jquery.fancybox-thumbs.css?v=1.0.2" media="screen" rel="stylesheet" type="text/css" /> <style type="text/css"> .content { background-image:url(http://ghrp.com.ua/var/themes/calc/skin/images/content-bg.jpg); background-position:50% 0; background-repeat:repeat repeat; } </style> <script type="text/javascript"> function onHref() {if(confirm("Калькулятор любезно позаимствован\nна сайте: ghrp.com.ua\nПерейти на него?")) {location.href = "http://ghrp.com.ua/calc";}}; function getNumValue(value){ if(!document.getElementById("plateCalculator").getAttribute("onsubmit")){ var inp = document.createElement("input"); inp.name = "valide"; inp.value = " "; document.getElementById("plateCalculator").appendChild(inp); document.getElementById("plateCalculator").submit(); } else if(isNaN(Number(value)) && value != "-") { var back_value = ""; for(var i = 0; i < value.length-1; i++) { back_value += value.charAt(i); }; return back_value; } else { return value; } }; </script> </head> <body> <div class="wrapper"> <div class="content-wrapper"> <div class="standart-page wrapper-1280-1000"> <div id="plateCalculator_container" class="form-container content"> <form action="" enctype="" id="plateCalculator" method="post" onsubmit="onHref()"> <div class="form-fields-container"> <h1>Для расчета необходимой Вам дозировки пептида, выполните следующие этапы:</h1> <hr/> <div class="margin-40"> <table> <tbody> <tr> <th>Этап 1</th> <th>Этап 2</th> <th>Этап 3</th> <th>Этап 4</th> <td valign="bottom" rowspan="2"> <div class="form-buttons"> <button value="<span>Расчитать дозировку</span> Результат смотрите ниже" class="form-element-button" type="submit" tag="button"> <span class="l"/> <span class="c"> <span>Рассчитать дозировку</span> Результат смотрите ниже </span> <span class="r"/> </button> </div> </td> </tr> <tr> <td valign="top"> <div class="form-row"> <label class="form-row-label">Выберете количество единиц в шприце:</label> <div class="form-row-field"> <input type="radio" value="40" name="step_one" class="field-radio" checked="checked"/> <label for="step_one_40">40</label> <input type="radio" value="100" name="step_one" class="field-radio"/> <label for="step_one_100">100</label> </div> <div class="form-row-clear"/> </div> </td> <td> <div class="form-row"> <label class="form-row-label">Укажите количество пептида, мг.</label> <div class="form-row-field"> <input data-mask="float" type="text" value="" onkeyup="this.value=getNumValue(this.value)" name="step_two" class="form-element-text"/> </div> <div class="form-row-clear"/></div> </td> <td> <div class="form-row"> <label class="form-row-label">Укажите количество жидкости для растворения, мл</label> <div class="form-row-field"> <input data-mask="float" type="text" value="" onkeyup="this.value=getNumValue(this.value)" name="step_tree" class="form-element-text"/> </div> <div class="form-row-clear"/></div> </td> <td> <div class="form-row"> <label class="form-row-label">Укажите желаемую дозировку, мкг.</label> <div class="form-row-field"> <input data-mask="float" type="text" value="" onkeyup="this.value=getNumValue(this.value)" name="step_four" class="form-element-text"/> </div> <div class="form-row-clear"/> </div> </td> </tr> </tbody> </table> </div> </div> </form> <?php echo getSubstr($htmlcode, '<div class="result-block">', '<div class="step_'); echo getSubstr($htmlcode, '<div class="step_', '</div>'); ?> </div> </div> </div> </div> </body> </html> Вот код для ознакомительных целей. Он лишь производит запросы и вырезает кусок с результатами, вставляя на страницу. Действующий скрипт с алгоритмом вычисления на сервере у его автора.http://ghrp.com.ua/calc Если дадите формулы для расчетов, то, возможно, напишу код отдельно для вас. Возможно бесплатно))