制作PHP计算器存储和显示历史记录

时间:2015-07-12 10:43:37

标签: php html session-state

我是PHP的新手,我正在尝试创建一个简单的计算器,它还在页面上的div中显示历史记录(过去的计算)。

你输入类似" 4 +"在第一个领域和" 3"在第二个,它显示" 4 + 3 = 7"在div中称为"结果"。但是,我想在那里显示结果的整个历史记录,因此当我执行新计算时,两个计算/结果都将显示结果div。在PHP中这样做的最佳方法是什么? DOMNode::appendChild可以选择吗?

这是我的代码:

<div id="form">
    <form action="" method="post">
        <input type ="text" name="firstNumber">
        <input type ="text" name="secondNumber">
        <input type ="submit" style="display:none">
    </form>
</div>

Result:

<?php 

    $number1 = $_POST["firstNumber"];
    $number2 = (int)$_POST["secondNumber"];

    @$operator = substr($number1, -1);


switch($operator){
    case '+':
        $result = (int)$number1+$number2;
        echo $result;
        break;
     case '-':
        $result = (int)$number1-$number2;
        echo $result;
        break;
    case '*':
        $result = (int)$number1*$number2;
        echo $result;
        break;
    case '/':
        $result = (int)$number1/$number2;
        echo $result;
        break;
}

?>


<div id="results">
    <?php echo substr($number1,0, -1);
        echo $operator; 
        echo $number2; ?>
 <br>=
    <?php echo $result; ?>
</div>

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

要存储历史服务器端,您需要一个数据库,如MySQL,一个缓存服务器,如Memcache或Redis,或者您只需将结果存储在$_SESSION中。 Here是如何在会话中存储数据的好资源。如果您将其存储在$_SESSION中,则当用户清除其Cookie(或注销,如果您实施用户帐户)时,您的历史记录将会丢失。