如何逐个加起来

时间:2012-03-28 12:31:06

标签: php session

我有一个名为“$ SessionMinus”的变量。我想要做的是,每次提交或刷新表单时,它每次都会将数字加1,因此它将从1开始,然后是2,然后是3 ......所有最高的数字都是“ $ _SESSION ['sessionNum']。如何做到这一点?

谢谢

    <?php
    session_start();

                $sessionMinus = 1;

        if(isset($_POST['sessionNum'])){

            //Declare my counter for the first time
               if ($sessionMinus < $_SESSION['sessionNum'])
    {
        $sessionMinus++;
    }

            $_SESSION['initial_count'] = $_POST['sessionNum'];
            $_SESSION['sessionNum'] = $_POST['sessionNum'];

    }


?>


<body>

<?php

echo $sessionMinus;

?>

      <form id="enter" action="<?php echo htmlentities($_SERVER['PHP_SELF']); ?>" method="post" onsubmit="return validateForm(this);" >
        <p><input id="submitBtn" name="submitDetails" type="submit" value="Submit Details" /></p>
        </form> 


    <?php

    $outputDetails = "";
    $outputDetails .= "
    <table id='sessionDetails' border='1'>
    <tr>
    <th>Number of Sessions:</th> 
    <th>{$_SESSION['initial_count']}</th>
    </tr>";
    $outputDetails .= "        </table>";

    echo $outputDetails;


    ?> 


</body>

2 个答案:

答案 0 :(得分:2)

如果我理解正确,您只需在第一个条件下增加$sessionMinus++;

if(isset($_POST['sessionNum']))
{
    if ($sessionMinus < $_SESSION['sessionNum'])
    {
        $sessionMinus++;
    }
}

这样,每隔一段时间,有人会提交表单(定义{{​​1}}时),$_POST['sessionNum']会递增。

答案 1 :(得分:0)

您似乎正在尝试跟踪会话开始的次数,最多可达到最长时间。创建一个计数会话变量,并最初为其分配一个。每次加载会话时,增量然后将此新变量分配给'sessionMinus'

 <?php
    session_start();


    if(isset($_POST['sessionNum'])){
         $_SESSION['sessionNum'] = $_POST['sessionNum'];
    }

    if(!isset($_SESSION['sessionCount'])){
         $_SESSION['sessionCount'] = 1;
    }
    else
    {
         $_SESSION['sessionCount']++;
    }

    $sessionMinus =  $_SESSION['sessionCount'];


?>

编辑:在第二个问题上犯了一个小错误......纠正了它