php 会话变量未更新
php session variables not updating
我有一个 php 会话变量,我在一个页面中更新它并在不同的页面中访问它,当变量达到阈值时,我将它重置为零并根据文件数递增它上传。
问题是当我重置并再次重新加载页面时达到阈值后,我访问的会话变量未更新的文件并显示为零,尽管文件已上传。
但实际上会话变量在另一个页面中是递增的。只重载两次就显示真实值(增加的值)
我想知道为什么会这样。
首先,为您的问题显示代码很重要,但对于这个特定问题,问题在于您在更新的文件中使用 session
variables
他们。会话在页面中的任何内容之前加载,因此,当您更新它们时,它们已经加载,并且尽管它们已更改,但它们的值在当前页面中仍然相同。
为防止这种情况,您需要在更新会话后转到另一个页面,或者如果有必要保持在同一地址,则在会话更改语句后放置重定向,如下所示:
<?php
if(threshold){
$_SESSION['your_session']='your new value';
header('LOCATION sample.php');
}
?>
我有一个 php 会话变量,我在一个页面中更新它并在不同的页面中访问它,当变量达到阈值时,我将它重置为零并根据文件数递增它上传。
问题是当我重置并再次重新加载页面时达到阈值后,我访问的会话变量未更新的文件并显示为零,尽管文件已上传。
但实际上会话变量在另一个页面中是递增的。只重载两次就显示真实值(增加的值)
我想知道为什么会这样。
首先,为您的问题显示代码很重要,但对于这个特定问题,问题在于您在更新的文件中使用 session
variables
他们。会话在页面中的任何内容之前加载,因此,当您更新它们时,它们已经加载,并且尽管它们已更改,但它们的值在当前页面中仍然相同。
为防止这种情况,您需要在更新会话后转到另一个页面,或者如果有必要保持在同一地址,则在会话更改语句后放置重定向,如下所示:
<?php
if(threshold){
$_SESSION['your_session']='your new value';
header('LOCATION sample.php');
}
?>