通过 php 变量的值设置输入字段的值

新手上路,请多包涵

我有一个简单的 php 计算器,代码是:

 <html>
    <head>
        <title>PHP calculator</title>
    </head>

    <body bgcolor="orange">
        <h1 align="center">This is PHP Calculator</h1>
        <center>
            <form method="post" action="phptest.php">
                Type Value 1:<br><input type="text" name="value1"><br>
                Type value 2:<br><input type="text" name="value2"><br>
                Operator:<br><input type="text" name="sign"><br>
                Result:<br><input type"text" name="result">
                <div align="center">
                    <input type="submit" name="submit" value="Submit">
                </div>
            </form>
        </center>

<?php
    if(isset($_POST['submit'])){
        $value1=$_POST['value1'];
        $value2=$_POST['value2'];
        $sign=$_POST['sign'];

        if($value1=='') {
            echo "<script>alert('Please Enter Value 1')</script>";
            exit();
        }

        if($value2=='') {
            echo "<script>alert('Please Enter Value 2')</script>";
            exit();
        }

        if($sign=='+') {
            echo "Your answer is: " , $value1+$value2;
            exit();
        }

        if($sign=='-') {
            echo "Your answer is: " , $value1-$value2;
            exit();
        }

        if($sign=='*') {
            echo "Your answer is: " , $value1*$value2;
            exit();
        }

        if($sign=='/') {
            echo "Your answer is: " , $value1/$value2;
            exit();
        }
    }
?>

我想要做的就是答案应该显示在结果输入字段中,而不是单独回显它们。请帮忙?我知道这很简单,但我是 PHP 新手。

原文由 sam 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 249
2 个回答

一种方法是将所有 php 代码移动到 HTML 上方,将结果复制到一个变量,然后将结果添加到 <input> 标记中。

尝试这个 -

 <?php
//Adding the php to the top.
if(isset($_POST['submit']))
{
    $value1=$_POST['value1'];
    $value2=$_POST['value2'];
    $sign=$_POST['sign'];
    ...
        //Adding to $result variable
    if($sign=='-') {
      $result = $value1-$value2;
    }
    //Rest of your code...
}
?>
<html>
<!--Rest of your tags...-->
Result:<br><input type"text" name="result" value = "<?php echo (isset($result))?$result:'';?>">

原文由 Kamehameha 发布,翻译遵循 CC BY-SA 3.0 许可协议

在表单内,您可以使用此代码。替换您的变量名(我使用 $variable)

 <input type="text" value="<?php echo (isset($variable))?$variable:'';?>">

原文由 Kusal Thiwanka 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题