我想在刷新时保留变量的一个内容,因为它有点像计数器,这是我使用会话获得的代码,但它似乎不想工作。
是的,我已经查看了其他网站的错误,我已经删除了所有不必要的空格等。
session_start();
$result = mysql_query('SELECT MIN(ID) AS min, MAX(ID) AS max FROM ytable') or exit(mysql_error());
$row = mysql_fetch_assoc($result);
if($_SESSION['counter'] < $row['max']){
if (isset($_SESSION['counter'])){
$counter = $_SESSION['counter']++;
}else{
$counter = $_SESSION['counter'] = 0;
}
}
我的代码有问题吗? 如果没有,还有其他方法可以做同样的事情吗?
答案 0 :(得分:0)
if($_SESSION['counter'] < $row['max']){
if (isset($_SESSION['counter'])){
$counter = $_SESSION['counter']++;
检查$_SESSION['counter']
是否小于$row['max']
而然后对其isset
进行检查是否有意义应首先isset
。
这可能是您的问题:当您在右侧上使用++
时,它会返回当前值,然后递增(后递增)。如果你想增加它,并返回递增的值,你需要使用pre-inrement版本,所以
$counter = ++$_SESSION['counter'];
;
$a=1;
$b=$a++;
//$a=2, $b=1
$a=1;
$b=++$a;
//$a=2, $b=2