Php $u会话变量的问题
我第一次使用$\u会话变量,我很难理解它到底是怎么回事。我希望这段代码能够在每次按下“提交”按钮时更新计数器。它从零开始,第一次单击后更新为1。然后,它会停留在一个位置,并且似乎不会更新过去。我遵循了几个例子,但我似乎找不到一个解释,为什么它会这样。我做错了什么?我确信这是一件相当基本的事情,但就我的一生而言,我不知道它是什么 提前感谢您的帮助Php $u会话变量的问题,php,session-variables,Php,Session Variables,我第一次使用$\u会话变量,我很难理解它到底是怎么回事。我希望这段代码能够在每次按下“提交”按钮时更新计数器。它从零开始,第一次单击后更新为1。然后,它会停留在一个位置,并且似乎不会更新过去。我遵循了几个例子,但我似乎找不到一个解释,为什么它会这样。我做错了什么?我确信这是一件相当基本的事情,但就我的一生而言,我不知道它是什么 提前感谢您的帮助 1 <?php 2 session_start(); 3 $_SESSION['counter']=((!i
1 <?php
2 session_start();
3 $_SESSION['counter']=((!isset($_SESSION['counter']))? 0 : $_SESSION['counter']);
4 if($_POST['submit']){
5 $_SESSION['counter']++;
6 }
7 ?>
8 <html>
9 <body>
10 <form method = "post">
11 <input type="submit" name="submit" value = "Submit button" />
12 </form>
13 <div name = "content">
14 <h3>Submit has been clicked <?php echo $_SESSION['counter'] ?> times</h3>
15 </div>
16 </body>
17 </html>
1
8.
9
10
11
12
13
已点击14次提交
15
16
17
试试这段代码。。。我认为每次加载页面时,您都将计数器重置为0
<?php
session_start();
if (!isset ($_SESSION['counter'])) {
$_SESSION['counter'] = 0;
}
if (isset ($_POST['submit'])) {
$_SESSION['counter']++;
}
?>
它可能来自您最初设置的
$\u会话['counter']
我会以不同的方式开始:
if($_POST['submit'] && isset($_SESSION['counter'])){
$_SESSION['counter']++;
}else{
$_SESSION['counter'] = 0;
}
这里不需要使用难看的三元运算符。只需执行:
如果(!isset($\u SESSION['counter']){$\u SESSION['counter']=0;}
我尝试了这个,但它似乎不起作用?顺便说一句,我应该仍然使用session_start(),是吗?它的行为仍然与以前一样。是否需要将服务器配置为处理会话?这似乎从来没有设置$_session['counter']。因此,它从不增加。