Javascript-форум (https://javascript.ru/forum/)
-   Серверные языки и технологии (https://javascript.ru/forum/server/)
-   -   Перевод Цельсий в Фаренгейта и наоборот (https://javascript.ru/forum/server/75012-perevod-celsijj-v-farengejjta-i-naoborot.html)

usa-1450 25.08.2018 22:21

Перевод Цельсий в Фаренгейта и наоборот
 
Программа правильно переводит температуру цельсий в фаренгейт если ввести в первое поле Фаренгейт какое-нибудь число, но если ввести во 2-ое поле Цельсия какое-то число,а первое поле оставить пустым, при нажатии на кнопку "Перевести" происходит пустота, почему так?
Нужно чтобы при вводе во второе поле Цельсия происходил вывод, его нет почему то, просто пусто на экране.

Вот код программы:

Код:

<?php
$f = $c = '';
if(isset($_POST['f'])) $f = $_POST['f'];
if(isset($_POST['c'])) $c = $_POST['с'];

if($f!='')
{
        $c = ($f-32)*(5/9);
        $out = "Температура фаренгейта $f ° равна $c ° Цельсия";
}
else if($c != ""){
        $f = ($c+32)*(9/5);
    $out = "Температура $c ° цельсия равна $f ° Фаренгейта";
}
else $out = "";

echo <<<_END
<html>
 <head>
                <title> Перевод температуры</title>
 </head>
 <body>
 <pre>
 Введите значение температуры в одной из полей формы:
  <b>$out</b>
  <form method="post" action = "index.php">
                Температура по Фаренгейту <input type="text" name="f" size="7"><br><br>
                  Температура по Цельсию <input type="text" name="с" size="7">
                <input type="submit" value="Перевести">
  </form>
  </pre>       
 </body>
 </html>
_END;
?>


bes 26.08.2018 00:25

usa-1450, поищи букву "с" в тексте и посмотри, что найдёт, а что нет;)

laimas 26.08.2018 02:50

if($num = (int)$_POST['num']) {
	$num = (int)$_POST['type'] ? 'Температура Фаренгейта ' . $_POST['num'] . '° равна ' . ($num-32)*(5/9) . '° Цельсия'
                               : 'Температура Цельсия ' . $_POST['num'] . '° равна ' . ($num+32)*(9/5) . '° Фаренгейта';
}

echo $num;

<form method="post">
Температура <input name="num" /> по 
<label><input type="radio" name="type" value="0" checked="" /> Фаренгейту</label>
<label><input type="radio" name="type" value="1" /> Цельсию</label><br />
<button>Перевести</button>
</form>


Часовой пояс GMT +3, время: 09:50.