2012-11-16 34 views
0

接近我的脚本在session_start()下面的顶部;我有下面这段代码:如何删除一个字符串,如果它是一个单一的考试

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

    $_SESSION['id'] = $_POST['id']; 

    } 

    if(isset($_SESSION['sessionNum'])){ 
       //Declare my counter for the first time 

       $_SESSION['initial_session'] = $_SESSION['sessionNum']; 
       $_SESSION['sessionNumber'] = intval($_SESSION['sessionNum']); 
       $_SESSION['sessionCounting'] = 1; 

     } 

    elseif (isset($_POST['submitMarks']) && $_SESSION['sessionCounting'] < $_SESSION['sessionNumber']) { 
     $_SESSION['sessionCounting']++; 
    } 

    $sessionMinus = $_SESSION['sessionCounting']; 
    $sessionConcat = $_SESSION['sessionCounting']; 


    if ($sessionMinus == $_SESSION['initial_session']){ 

     $action = 'infopenaltymarks.php'; 

    }elseif($sessionMinus != $_SESSION['initial_session']){ 

     $action = $_SERVER['PHP_SELF']; 

    } 

$assessment = $_SESSION['id'] . $sessionConcat; 

现在对于我使用这个代码页的标题:

<h1>INDIVIDUAL MARKS FOR EACH ANSWER: ASSESSMENT (<?php echo $assessment ?>) <?php echo $sessionMinus ?> OF <?php echo $_SESSION['initial_session'] ?></h1> 

现在让我们说的Session数据库中的表看起来像下面这样:

SessionId SessionName 
1   AAA1 
2   AAA2 
3   AAB 

现在,如果你看看上面的表,我有多个考试AAA1AAA2,我有一个考试AAB

现在让我们说,我对考试AAA1工作,它会显示如下标题:

个人MARKS每个答案:评估(AAA1)1 2

上述标题是正确的,因为它显示了正确的考试名称,它指出其第一个冲出两个AAA考试

当我提交的页面,它会改变航向去第二AAA考试其低于:

个人MARKS每个答案:评估(AAA2)2 OF 2

再次上述标题是正确的。

我的问题是,如果我有一个单一的考试,或者在这种情况下,考试AAB,因为它是一个单一的考试,它不会在考试名称末尾含有所以它只是显示为数字数据库中的AAB

但是当我输出的标题,显示此下面:

每个答案个人MARKS:评估(AAB1)1 1

现在你可以看到上面的标题是不正确因为它不是考试AAB1,它应该在括号之间的AAB。所以我的问题是,如果考试是1 OF 1或换句话说只是一个考试,我怎么能从括号中的考试名称末尾删除数字1,以便它显示为AAB而不是AAB1

回答

0

只要大于1

$assessment = $_SESSION['id']; 
if ($_SESSION['initial_session'] > 1) { 
    $assessment .= $sessionConcat; 
} 

修复就在我的问题打印线

<?php 
if ($_SESSION['initial_session'] == 1) { 
    $assessment = substr($assessment, 0, -1); 
} 
?> 
<h1>INDIVIDUAL MARKS FOR EACH ANSWER: ASSESSMENT (<?php echo $assessment ?>) <?php echo $sessionMinus ?> OF <?php echo $_SESSION['initial_session'] ?></h1> 
+0

$评估是在代码的顶部块底部之前加入会话计数 – user1819709

相关问题