add more

I have problem in update so please help me someone

while updating data If I add 1 more subject it overwrites previous subject & displays only 2 subject. 3 subject cant added

here is my code

public function actionUpdate($id)

{


	$model=$this->loadModel($id);


           


            $Studmarks = StudMarks::model()->findAllByAttributes(array("sid" => $id));





	// Uncomment the following line if AJAX validation is needed


	// $this->performAjaxValidation($model);





	if(isset($_POST['Student']))


	{


	 $model->attributes=$_POST['Student'];


             //$Studmarks->attributes=$_POST['StudMarks'];


	 if($model->save(false))


             {


               $arr_len = count($_POST['StudMarks']['Subject']);


             // echo"".$arr_len; exit;


               for ($i = 0; $i < $arr_len; $i++) 


              {


                


                 if(!empty($_POST['StudMarks']['Mid'][$i]))


                 // echo $_POST['StudMarks']['Mid'][$i];exit;  


                 $Studmarks = StudMarks::model()->findByAttributes(array("Mid"=>$_POST['StudMarks']['Mid'][$i])); 


                 


                 //$Studmarks->save(false);


                 if(!empty($Studmarks))


                 {


                     


                    $Studmarks->attributes = array("Subject" => $_POST['StudMarks']['Subject'][$i], "Marks" => $_POST['StudMarks']['Marks'][$i]);


                    $Studmarks->save(false);


                 }


                 else


                 {


                        $Studmarks = new StudMarks;


                        $Studmarks->attributes = array("id" => $model->id, "Subject" => $_POST['StudMarks']['Subject'][$i], "Marks" => $_POST['StudMarks']['Marks'][$i]);


                        $Studmarks->save(false);


                 }


               }


			


	}


            $this->redirect(array('view','id'=>$model->sid));


            


         }


	$this->render('update',array(


		'model'=>$model,'Studmarks'=>$Studmarks


	));





    }