0

首先,我不是编程专家,所以如果可以的话,请稍微解释一下,以便我更好地理解它们。我正在尝试制作一个计算器,该计算器将包含一些用户可以填写的字段,并显示最后的输出。基本上是这样的:

变量框 “Go”按钮 按下 Go 后在此处显示结果。

用户可以更改这些框并再次单击 go 以刷新新结果。

如果可能的话,我不想为此使用 Java。请帮助我提供 HTML/PHP 解决方案。

我有这个页面命名为“isset.php”

<?php 
session_start(); 
error_reporting(E_ALL);
ini_set('display_errors', '1');?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
</head>
<body>

<?php
     if(isset($_POST['submit']))
        {
        $a = $_POST['a'];
        $b = $_POST['b']; 
        $sf = $a-(2*$b);
        echo "<br><br>Safety Factor is ";
        echo $sf;
        } 
     else {
        echo "Your results will display here after you use the calculator.";
          }
 ?>

 <br>Calculator
 <form name="submit" method="post" action="isset.php">
 <table width="450px">
     <td valign="center">
     <label for="a">a</label></td>
        <td valign="center">
        <input type="text" name="a" value="45"></td></tr>
     <td valign="center">
     <label for="b">b</label></td>
        <td valign="center">
        <input type="text" name="b" value="16"></td></tr>         
 <tr><td colspan="2" style="text-align:center">
 <input type="submit" value="Calculate!">
 </td></tr></table>
 </form>        

</body>
</html>
4

2 回答 2

2

更改<input type="submit" value="Calculate!"><input name="submit" type="submit" value="Calculate!">

您的代码不起作用的原因是您正在检查发布数据是否包含密钥submit,但您尚未在表单中定义它(您通过添加name属性来执行此操作)。

于 2012-11-08T18:08:07.117 回答
1

如果你只是改变这一行:

if(isset($_POST['submit']))

到:

if(isset($_POST['a']))

那应该看你的权利。

基本上,您正在寻找一个名为“提交”的值,但实际上并没有一个名为“提交”的字段。相反,您可以只检查您拥有的字段之一,“a”或“b”。

于 2012-11-08T18:15:49.060 回答