【问题标题】:php form to multiply 3 numbers where one is variable entered by userphp表单乘以3个数字,其中一个是用户输入的变量
【发布时间】:2012-02-04 05:22:35
【问题描述】:

我有 4 个变量

$daysperweek=7;
$hoursperday=24;
$minutesperhour=60;
$minutesperweek=($minutesperhour * $hoursperday) * $daysperweek=7;

我需要创建带有计算按钮的表单,因此用户可以输入任意数量的 $hoursperday 以及计算 $minutesperweek 的函数

我有这个公式

<?php
$mul = gmp_mul("60", "24") , "7";
echo gmp_strval($mul) . "\n";
?>

但不确定如何声明可以是用户输入的任意数字的 $hoursperday 变量,以及如何将所有内容放入表单中

理想情况下,我会得到这样的结果:输入(表单:每天的小时数),PHP 函数将(提交按钮:计算)每周的分钟数 - 回显结果

任何提示都会很棒,

非常感谢,

安东

【问题讨论】:

  • 为什么在这一行的末尾有一个=7$minutesperweek=($minutesperhour * $hoursperday) * $daysperweek=7; 你为什么使用gmp_mul?你预计这些数字会有多大?为什么尾随,"7";?很确定这是一个语法错误。
  • 您是否试图将值强制为 int?当然,您可以使用 $_POST['somevar'] 和一些简单的验证,例如 is_int(),也许还可以使用 round()、floor() 或 (int) 类型转换来处理这个问题。

标签: php forms function numbers


【解决方案1】:

简单。

<?php
 $daysperweek = 7;

if($_POST['calculate'])
{
 $hoursperday = intval($_POST['hoursperyday']);
 $minutesperweek = 60*$hoursperday*$daysperweek;
 echo "Minutes per week: ".$minutesperweek;
}
else
{
?>
<form method='post' action=''>
Hours per day: <input tpye='text' name='hoursperday' value=''>
<br />
<input type='submit' name='calculate' value='Calculate Minutes per week!'>
</form>
<?php
}
?>

这是你想要的吗?

【讨论】:

    【解决方案2】:

    当然,用表格记录小时数,然后用 PHP 进行计算。

    <?php
    
    define("MINUTES_PER_HOUR", 60);
    define("DAYS_PER_WEEK", 7);
    
    $result = null;
    
    if (isset($_POST["hpd"])) {
        $hpd = intval($_POST["hpd"]);
        $result = (int)MINUTES_PER_HOUR * (int)DAYS_PER_WEEK * $hpd;
    }
    ?>
    <!DOCTYPE HTML>
    <html lang="en-US">
    <head>
        <meta charset="UTF-8">
        <title></title>
    </head>
    <body>
    
    <form action="" method=POST>
        <label>Hours per Day: <input name="hpd" type="number" value=24></label>
        <button type=submit>Go</button>
    </form>
    
    <p class="result">
        <?php echo $result; ?>
    </p>
    
    </body>
    </html>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-06-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-17
      相关资源
      最近更新 更多