【发布时间】:2017-05-13 07:30:59
【问题描述】:
我想用 PHP 做一个计算器。我需要一种将计算结果保存为新的预定义输入的方法。
示例:用户将 5 和 6 相乘,得到的结果为 30。如果他们想将结果相乘,目前需要再次输入 30 并选择所需的操作。
我想保存每个操作的结果,以便用户可以继续对结果进行计算。如果用户不想进一步使用结果,他们只需要输入一个新数字并点击提交即可。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Kalkulator</title>
<link href="style.css" rel="stylesheet" type="text/css">
</head>
<body>
<?php
if (isset($_POST["posalji_vrijednosti"]))
{
$b_1 = $_POST["broj_1"];
$op = $_POST["operacija"];
$b_2 = $_POST["broj_2"];;
}
// Varijabla koja ce sadrzavati rezultat
$rezultat = "";
// Program odradjuje svoje ispod
if ($op == "*")
{
$rezultat = $b_1 * $b_2;
}
elseif ($op == "/")
{
$rezultat = $b_1 / $b_2;
}
elseif ($op == "+")
{
$rezultat = $b_1 + $b_2;
}
elseif ($op == "-")
{
$rezultat = $b_1 - $b_2;
}
?>
<form method="post">
<table>
<tr>
<td>Unesi prvi broj</td>
<td><input type="text" name="broj_1"></td>
</tr>
<tr>
<td>Odaberi operaciju</td>
<td><select name="operacija">
<option value="+">+</option>
<option value="-">-</option>
<option value="*">*</option>
<option value="/">/</option>
</select>
</td>
</tr>
<tr>
<td>Unesi drugi broj</td>
<td><input type="text" name="broj_2"></td>
</tr>
<tr>
<td><input type="submit" name="posalji_vrijednosti" value=" = "></td>
</tr>
<tr>
<td>
<td>
<?php
echo "Rezultat: $rezultat";
?>
</td>
</td>
</tr>
</table>
</form>
</body>
</html>
【问题讨论】:
-
您可以:1.将结果按默认设置在主输入字段中,2.提供一个按钮,用户可以单击该按钮将(显示的)结果放入输入 -> 需要 javascript ,但是是一件容易的事。 (肯定有第 3、第 4、... 选项。这些只是显而易见的选项)
-
在选项一中,您可以预先选择输入中的值(通过 javascript),这样当用户开始输入时,他将覆盖默认值。
-
另一个明显的选择是创建一个变量并在其中分配每个结果,并使其每次都成为默认输入。可能需要 If/Else,或者这取决于您的逻辑。
-
<input type="text" name="broj_1" value="<?php echo $rezultat; ?>"> -
@NedzadGanic 看看 Jeff 在您发布代码后想出解决方案的速度有多快? ;-) 不客气。
标签: php calculator