<?php
$operations = ['+', '-', '*', '/'];
$op1 = null;
$op2 = null;
if (isset($_POST['op1']) && isset($_POST['op2'])) { if (in_array($_POST['op'], $operations)) { $op1 = (float)$_POST['op1'];
$op2 = (float)$_POST['op2'];
switch ($_POST['op']){
case '+':
$res = $op1 + $op2;
break;
case '-':
$res = $op1 - $op2;
break;
case '*':
$res = $op1 * $op2;
break;
case '/':
if ($op2 == 0) {
echo 'На ноль делить нельзя!';
break;
} else $res = $op1 / $op2;
break;
}
} else {
$res = 'error!';
}
}?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Calculator</title>
</head>
<body>
<form action="calc.php" method="post">
<input type="text" name="op1" value="<?php echo $op1; ?>"/>
<select name="op">
<?php foreach ($operations as $op): ?>
<option value="<?php echo $op; ?>"><?php echo $op; ?></option>
<?php endforeach; ?>
</select>
<input type="text" name="op2" value="<?php echo $op2; ?>"/>
<br>
<?php if(isset($res)): ?> <p>Result: <?php echo $res; ?></p>
<?php endif; ?>
<input type="submit" value="calc!" />
</form>
</body>
</html>
PD9waHAKJG9wZXJhdGlvbnMgPSBbJysnLCAnLScsICcqJywgJy8nXTsKJG9wMSA9IG51bGw7CiRvcDIgPSBudWxsOwppZiAoaXNzZXQoJF9QT1NUWydvcDEnXSkgJiYgaXNzZXQoJF9QT1NUWydvcDInXSkpIHsKICAgaWYgKGluX2FycmF5KCRfUE9TVFsnb3AnXSwgJG9wZXJhdGlvbnMpKSB7CiAgICAgICAgJG9wMSA9IChmbG9hdCkkX1BPU1RbJ29wMSddOwogICAgICAgICRvcDIgPSAoZmxvYXQpJF9QT1NUWydvcDInXTsKICAgICAgICBzd2l0Y2ggKCRfUE9TVFsnb3AnXSl7CiAgICAgICAgICAgIGNhc2UgJysnOgogICAgICAgICAgICAgICAgJHJlcyA9ICRvcDEgKyAkb3AyOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgJy0nOgogICAgICAgICAgICAgICAgJHJlcyA9ICRvcDEgLSAkb3AyOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgJyonOgogICAgICAgICAgICAgICAgJHJlcyA9ICRvcDEgKiAkb3AyOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgJy8nOgogICAgICAgICAgICAgICAgIGlmICgkb3AyID09IDApIHsKICAgICAgICAgICAgICAgICBlY2hvICfQndCwINC90L7Qu9GMINC00LXQu9C40YLRjCDQvdC10LvRjNC30Y8hJzsKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICB9IGVsc2UgJHJlcyA9ICRvcDEgLyAkb3AyOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICB9IGVsc2UgewogICAgICAgJHJlcyA9ICdlcnJvciEnOwogICAgfQp9Pz4KPCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CiAgICA8bWV0YSBjaGFyc2V0PSJVVEYtOCI+CiAgICA8dGl0bGU+Q2FsY3VsYXRvcjwvdGl0bGU+CjwvaGVhZD4KPGJvZHk+Cjxmb3JtIGFjdGlvbj0iY2FsYy5waHAiIG1ldGhvZD0icG9zdCI+CiAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ib3AxIiB2YWx1ZT0iPD9waHAgZWNobyAkb3AxOyA/PiIvPgogICAgPHNlbGVjdCBuYW1lPSJvcCI+CiAgICAgICAgPD9waHAgZm9yZWFjaCAoJG9wZXJhdGlvbnMgYXMgJG9wKTogPz4KICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0iPD9waHAgZWNobyAkb3A7ID8+Ij48P3BocCBlY2hvICRvcDsgPz48L29wdGlvbj4KICAgICAgICA8P3BocCBlbmRmb3JlYWNoOyA/PgogICAgPC9zZWxlY3Q+CiAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ib3AyIiB2YWx1ZT0iPD9waHAgZWNobyAkb3AyOyA/PiIvPgogICAgPGJyPgogICAgPD9waHAgaWYoaXNzZXQoJHJlcykpOiA/PgogICAgICAgIDxwPlJlc3VsdDogPD9waHAgZWNobyAkcmVzOyA/PjwvcD4KICAgIDw/cGhwIGVuZGlmOyA/PgogICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgdmFsdWU9ImNhbGMhIiAvPgo8L2Zvcm0+CjwvYm9keT4KPC9odG1sPg==