最初,$ number = 0.第一次点击Add按钮后,该值变为10.第二次点击时,值变为20.然后第三次是30,第四次是40。
以下是我的代码,有没有人知道如何修复它?谢谢!
<?php
$number = 0;
if(isset($_POST['add'])){
$number = $number +10;
}
?>
<html>
<head>
</head>
<body>
<form method="post" action="<?php echo $_SERVER['SCRIPT_NAME']; ?>">
<?php echo $number; ?>
<input type="submit" name="add" value="Add" />
</form>
</body>
</html>
答案 0 :(得分:1)
这是PHP工作原理的基础。
请求之间没有“状态”。这意味着每个请求都会忘记一切。因此,如果您想保留数据,则必须将其存储在某个位置。
有两种选择:
答案 1 :(得分:1)
<input type="hidden" value="<?php echo $number ?>" name="number" />
现在将$ _POST ['add']更改为$ _POST ['number'] 并且$ number = $ _POST ['number'] + 10;
答案 2 :(得分:1)
首先,您的PHP需要稍微调整一下:
<?php
$number = ($_POST['add'] != '') ? 0 : $_POST['add'];
$number += 10;
?>
<html>
然后在<input type="submit">
上方添加隐藏输入,如下所示:
<input type="hidden" name="add" value="<?php echo $number; ?>">
答案 3 :(得分:0)
答案 4 :(得分:0)
您需要以某种方式保存该值。要么使用数据库,比如MySql,要么可以将值保存在会话变量中。