2015-05-13 82 views
0

問題我已經刪除操作:與刪除的Symfony2

public function deleteAction(Request $request, $id) 
{ 
    $session = $request->getSession(); 
    $basket = $session->get('basket'); 
    foreach($basket as $key => $value) 
    { 
     $ids = $value['id']; 
     //var_dump($ids, $id); output - string(1) "1" string(1) "1" 
     if($ids == $id) 
     { 
      unset($value[$ids]); 
      $session->set('basket', $value); 
     } 
    } 
return $this->redirectToRoute('index_action'); 
} 

和數組,它看起來像:

[ 
    0 => [ 
    id => 1 
    ], 
    1 => [ 
    id => 6 
    ] 
] 

我想用$ ID刪除項。

我有一個錯誤:

SQLSTATE[HY093]: Invalid parameter number: Columns/Parameters are 1-based;

幫助我解決這個問題,請。

回答

0

這個錯誤與我無關,我想。

對於你原來的問題:

unset($basket[$key]); 
$session->set('basket', $basket); 

我希望它能幫助。

+0

我試着像您的答案,但是,我有這樣的陣列 '[1 => [ ID => 6 ], 2 => [ ID =>空 ] '我的項目沒有刪除 –

+0

對不起。我編輯過。 – pabgaran

+0

謝謝,它的幫助。我做到了,但顯然忘記清理會話) –

0

您的探頭在那裏。

 unset($value[$ids]); 
     $session->set('basket', $value); 

您之前刪除了$值。並添加到會話刪除變量($變量)。

+0

我添加到沒有元素的會話數組,我刪除了上面 –