我有删除操作:
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]:参数号无效:列/参数从1开始;
请帮我解决这个问题。
答案 0 :(得分:0)
我认为这个错误与此无关。
原始问题:
unset($basket[$key]);
$session->set('basket', $basket);
我希望它有所帮助。
答案 1 :(得分:0)
你的探测器。
unset($value[$ids]);
$session->set('basket', $value);
你之前删除了$ value。并添加到会话删除变量($ variable)。