在 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
现在,如果您查看上面的表格,我有多个考试AAA1
,AAA2
而我只有一个考试AAB
。
现在假设我正在研究 Exam AAA1
,它将显示如下标题:
每个答案的单独分数:评估 (AAA1) 1 / 2
上面的标题是正确的,因为它显示了正确的考试名称,并且它说明了它是两个AAA
考试 中的第一个
当我提交页面时,它将更改标题以进行第二次AAA
考试,如下所示:
每个答案的个人分数:评估 (AAA2) 2 / 2
再次,上面的标题是正确的。
我遇到的问题是,如果我有一个单一的考试,或者在这种情况下是一个考试AAB
,因为它是一个单一的考试,它在考试名称的末尾不包含一个数字,所以它只是AAB
在数据库中显示。
但是当我输出标题时,它会在下面显示:
每个答案的单独分数:评估 (AAB1) 1 / 1
现在您可以看到上面的标题不正确,因为它不是考试AAB1
,它应该AAB
在括号之间。所以我的问题是,如果考试是1 OF 1
或者换句话说只是一个考试,我如何从括号之间的考试名称末尾删除数字 1 以便将其显示为AAB
而不是AAB1
?