Php 使用从一种形式到另一种形式的变量时出错

Php 使用从一种形式到另一种形式的变量时出错,php,forms,variables,Php,Forms,Variables,在PHP中,我想使用在第一个表单中输入的$num值,并使用$num和另一个变量执行$rate函数,该变量名为$rate,我在第二个表单中输入 <body> <form action="" method="post"> Enter number: <input type="number" name="num" id="num"/> <input type="submit" name="next" value="Next"/><b

PHP
中,我想使用在第一个表单中输入的
$num
值,并使用
$num
和另一个变量执行
$rate
函数,该变量名为
$rate
,我在第二个表单中输入

<body>
<form action="" method="post">
    Enter number: <input type="number" name="num" id="num"/>
    <input type="submit" name="next" value="Next"/><br>
</form>
<?php   if( isset($_POST['next']) ) : $num = $_POST['num']; ?>
        Entered number: <input type="text" name="entered" id="entered" value=" <?=$num ?> "/>
<?php   endif; ?>

<form action="" method="post">
    Enter rate: <input type="number" name="rate" id="rate"/>
    <input type="submit" name="calculate" value="Calculate"/>
</form>
<?php   if( isset($_POST['calculate']) ) : $rate = $_POST['rate'];
            if( $rate >=1 && $rate <=10 ) : echo pow($num, $rate); endif;
        endif;
?>
</body
我需要在代码中添加什么来识别
$num
变量并正确执行
pow()

NB:不要注意“输入的”输入-这只是为了测试。


这是我昨天找到的解决方案,效果很好。希望大家都能理解

<?php   if( empty($_POST) ): ?>
<form action="" method="post">
    Enter number: <input type="number" name="num" id="num"/>
    <input type="submit" name="next" value="Next"/><br>
</form>
<?php   endif; ?>

<?php   if( isset($_POST['next']) ) : $num = $_POST['num']; ?>
<form action="" method="post">
    Entered number: <input type="text" name="entered" id="entered" value=" <?=$num ?> "/><br>
    Enter rate: <input type="number" name="rate" id="rate"/>
    <input type="submit" name="calculate" value="Calculate"/>
</form>
<?php   endif;

    if( isset($_POST['calculate']) ) : $rate = $_POST['rate'];
        $num = $_POST['entered']; 
        if( $rate >=1 && $rate <=10 ) : echo pow($num, $rate); 
        else: echo 'Enter rate between 1 and 10' . '<form> <input type="submit" value="Back" onClick="history.go(-1);return TRUE;"> </form>';
        endif;
    endif;
?>

输入号码:


输入的号码:全部在一个文件中吗?你认为这会怎样?您似乎还不了解HTML表单和PHP是如何协同工作的。阅读一些初学者教程。是的,它在一个文件中,毕竟它确实有效,所以问题不在我的“初学者”理解中。我写这篇文章是为了寻求比我更有经验的程序员的帮助,这样他们会向我展示我的问题的最佳解决方案,当然也会有其他面临类似问题的人来这里检查一下。。。很抱歉,但不要欣赏像你这样的评论,这些评论是轻声说的:无用的,甚至是冒犯性的…@user3572059-你的HTML中有两个单独的表单。第一个用于生成
$num
。请看一下您的第二个表单-哪里使用了
$num
<?php   if( empty($_POST) ): ?>
<form action="" method="post">
    Enter number: <input type="number" name="num" id="num"/>
    <input type="submit" name="next" value="Next"/><br>
</form>
<?php   endif; ?>

<?php   if( isset($_POST['next']) ) : $num = $_POST['num']; ?>
<form action="" method="post">
    Entered number: <input type="text" name="entered" id="entered" value=" <?=$num ?> "/><br>
    Enter rate: <input type="number" name="rate" id="rate"/>
    <input type="submit" name="calculate" value="Calculate"/>
</form>
<?php   endif;

    if( isset($_POST['calculate']) ) : $rate = $_POST['rate'];
        $num = $_POST['entered']; 
        if( $rate >=1 && $rate <=10 ) : echo pow($num, $rate); 
        else: echo 'Enter rate between 1 and 10' . '<form> <input type="submit" value="Back" onClick="history.go(-1);return TRUE;"> </form>';
        endif;
    endif;
?>