2014-09-02 47 views
2

我从用户那里获取两个数字,然后在禁用的文本框中显示它们的总和。我也将输入存储在我的数据库中。在PHP中获取禁用文本框的值

一切工作正常。我可以将number1和number2传递给我的数据库,但我无法将总和传递给db。我花了太多时间自己解决这个问题,但没有运气。

你能检查我的代码,让我知道我在这里失踪了吗?我想要的是将总和存入我的数据库。

所以这是我的表格:

<p>Enter number1:</p> 
    <input id="number1" name="number1"/> 

    <p>Enter number2:</p> 
    <input id="number2" name="number2"/> 

    <p>Sum</p> 
    <input id="sum" name="sum" disabled="disabled"/> 

这是我的脚本:

var sum = (number1 + number2); 
    $('#sum').val(sum); 

,这是我的PHP代码:

<?php 
    ..connection info here.. 
    $number1 = $_POST['number1']; 
    $number2 = $_POST['number2']; 
    $sum = $_POST['sum']; 
    $stmt = $mysqli->prepare("INSERT INTO mytable VALUES('$number1', '$number2', '$sum')"); 
    if($stmt) 
    echo "Done."; 
    else 
    echo "Error."; 

    $stmt->execute(); 
    $stmt->close(); 
    $mysqli->close(); 
    ?> 
+0

的可能重复[我想在我们的下一个JSP禁用文本框的值,但是我得到空值(http://stackoverflow.com/questions/ 3757806/i-want-to-the-value-of-disabled-text-box-in-our-next-jsp-but-i-am-getting-nu) – 2015-07-28 10:15:05

回答

11

禁用的输入不包括在形式意见书。这是禁用它们的关键。

您可能想用readonly代替。

+0

是的,它是禁用的,但它有一个价值,对吧? – sensahin 2014-09-02 22:04:49

+1

它有一个值,你可以使用JavaScript获得。提交表单时未提交该值。 – user2019515 2014-09-02 22:05:21

+2

另一件值得考虑的事情是:如果您计算的值是以只读模式显示给用户,那么当表单重新发送回服务器时,我认为可以再次计算它们。 – kevin628 2014-09-02 22:08:43

5
<input id="sum" name="sum" readonly="readonly"/> 

因此,它将被包含在提交中,并且不允许任何人编辑该值。

1

请参考以下信息:

https://stackoverflow.com/a/3757816/6113439

因为你不能得到控制形式的任何值[method='post']当您插入属性disabled='disabled'

您可以使用readonly='readonly'代替disabled='disabled'