如何使用PHP填充输入字段

时间:2012-07-10 13:33:22

标签: php html

我正在尝试编写一个简单的计算器html页面,我在单独的文本框中要求两个数字,让用户单击一个按钮然后将结果存储到第三个文本框中。我正在尝试使用PHP来解决这个问题,但似乎无法以我想要的方式显示它。 回声线工作正常,但我不希望这样;

来自HTML

     <form action="Add.php" method="get">
        <input for='num1' type="text"  name="num1" />
        <input for='num2' type="text" name="num2" />

        <input type="submit" value="Add Them" />
        <input type="text" name="AnswerBx" id="SumTotalTxtBx"/>
    </form> 

Add.php

     <?php 
        $num1 = $_GET["num1"];
        $num2 = $_GET['num2'];
        $sum = $num1+$num2;
        //echo "$num1 + $num2 = $sum";

        document.getElementById("SumTotalTxtBx").value = $sum;
    ?>

4 个答案:

答案 0 :(得分:7)

你不能像这样混合PHP和JavaScript!一个在服务器上运行,另一个在客户端上运行。

您必须将值回显到文本框的value属性,如此

<input type="text" value="<?PHP echo $sum; ?>" />

答案 1 :(得分:0)

您正在混合使用PHP和Javascript,请返回PHP手册:http://php.net/manual并阅读php的工作原理并与用户进行交互。

当PHP在服务器上运行时,Javascript基本上在客户端运行。你需要php一些东西,它会为你返回一个新的HTML页面。

话虽如此,它是一个太广泛的主题,可以帮助您解决错误。

祝你好运

答案 2 :(得分:0)

使用 jQuery ,您可以解决此问题,而无需在服务器上进行回复,而不是

var num1 = parseInt($("input:text[name='num1']"));
var num2 = parseInt($("input:text[name='num2']"));
$('input:text#SumTotalTxtBx').val(num1+num2);

答案 3 :(得分:0)

好的,所以PHP非常棒,但它的所有计算都是在服务器端执行的,而不是客户端。使用AJAX,你可以执行一些针对服务器的PHP代码,但我想你可能对你的计算器的javascript更感兴趣。

<html>
<head>
<script>
function calculateSum()
{
    num1 = parseInt(document.getElementById("num1").value);
    num2 = parseInt(document.getElementById("num2").value);

    sum = num1 + num2;

    document.getElementById("sum").innerHTML = sum;
}
</script>
<body>
<input id="num1" type="text"/><br/>
<input id="num2" type="text"/><br/>
<button onclick="calculateSum()">Submit!</button>
<span id="sum">..the sum is..</div>
</body>
</html>

Javascript非常简单,在客户端编程时非常棒。如果您想了解更多信息,我建议您阅读javascript over at w3schools!我希望有所帮助!!