我不想';1';包含在字符串旁边


I dont want '1' to be included next to string

我有下面的代码:$insert=array();

  for ($i = 1, $n = $_POST['sessionNum']; $i <= $n; ++$i)
  {
      if( $_POST['sessionNum'] == '1'){
            $insert[] = "'" . mysql_real_escape_string($_POST['id']) . ($i == 1 ? '' : $i) . "'";
        }else{
            $insert[] = "'" . mysql_real_escape_string($_POST['id']) . "'";
        }

    $insert[] .= "' ". mysql_real_escape_string( $_POST['textMarks'] ) . "'";
  }
  $sql = "INSERT INTO Session (SessionId, TotalMarks) 
  VALUES (" . implode('), (', $insert) . ")";

  mysql_query($sql);

上面的代码所做的是在$_POST['id']旁边添加一个数字,具体取决于$_POST['sessionNum']中的数字。

例如,如果$_POST['sessionNum']为'3',$_POST['id']为VBV,则它将显示'VBV3'。

但我想要的是,如果$_POST["sessionNum"]是"1",我不希望它显示"VBV1",而是只显示"VBV",因为它是一个单独的会话。

如何做到这一点?

for ($i = 1, $n = $_POST['sessionNum']; $i <= $n; ++$i)
{
  $insert[] = "'" . mysql_real_escape_string($_POST['id']) . ($n == 1 ? '' : $i) . "'";
}