Php $GLOBALS无法获取预期的数据
我有下面的php代码:Php $GLOBALS无法获取预期的数据,php,Php,我有下面的php代码: <form method="get"> <input type="text" name="num1" placeholder="num1"> <input type="text" name="num2" placeholder="num2"> <button type="submit" name="submit" value="func1">Submit</button> </for
<form method="get">
<input type="text" name="num1" placeholder="num1">
<input type="text" name="num2" placeholder="num2">
<button type="submit" name="submit" value="func1">Submit</button>
</form>
The result is: <?php
if (isset($GLOBALS['result'])) {
echo $GLOBALS['result']; // there do not get the add result.
}
?>
<?php
$GLOBALS['result'] = 0;
if(isset($_GET['submit']) && $_GET['submit'] == 'func1'){
$num1 = $_GET['num1'];
$num2 = $_GET['num2'];
$GLOBALS['result'] = $num1 + $num2;
}
?>
提交
结果是:
问题是if(isset($GLOBALS['result']){…}
代码没有遍历
我的问题在哪里?
或者如何在不同的php标记中使用变量 提交表单后,页面将刷新。 因此,该值在全局中重置 如果您可以在submit条件中回显全局变量,那么您将获得这些值 注意:使用SESSION而不是GLOBALS
<?php
if(isset($_GET['submit']) && $_GET['submit'] == 'func1'){
$num1 = $_GET['num1'];
$num2 = $_GET['num2'];
$GLOBALS['result'] = $num1 + $num2;
echo $GLOBALS['result'];
}
?>
尝试下面的代码
它正在工作
<?php
session_start();
?>
<form method="get">
<input type="text" name="num1" placeholder="num1">
<input type="text" name="num2" placeholder="num2">
<button type="submit" name="submit" value="func1">Submit</button>
</form>
<?php
if(isset($_GET['submit']) && $_GET['submit'] == 'func1'){
$num1 = $_GET['num1'];
$num2 = $_GET['num2'];
$_SESSION['result'] = ($num1 + $num2);
}
?>
The result is: <?php
if (isset($_SESSION['result'])) {
echo $_SESSION['result']; // there do not get the add result.
}
?>
提交
结果是:
我知道我可以将php echo代码放在那里,但我想知道使用变量的不同php标记位置,我尝试使用$\u SESSION['result']
存储它,但仍然无法获取。谢谢你,兄弟,但是对我来说仍然有一个问题,如果结果是:
在if(isset($\u get['submit'])&$\u get之前['submit']=='func1')
php代码,不会按照我的要求进行更新。如果将该块置于提交条件之上,则不会得到所需的结果,因为随后需要页面刷新来更新会话变量。或者,如果条件低于$\u session['result']=($num1+$num2),则使用相同页面的标题位置;以获得该值