Я начал изучать codeigniter, и теперь у меня есть одна проблема. Я делаю интернет-магазин для ноутбуков, и теперь у меня есть желание сделать тележку. Я хочу запомнить все данные в сеансе, когда пользователь добавит какой-нибудь ноутбук в корзину, заново зарегистрирован или нет. Но моя проблема в том, что я помню в сеансе только последний добавленный идентификатор ноутбуков. Мне удалось запомнить количество ноутбуков в целом и общую цену, но не могу справиться с тем, как запомнить все ID. Я использую следующий код в контроллере:данные о кодеригере массива в сеансе
public function adding()
{
$id_lap=$this->input->post('id_lap'); // id laptop of which was clicked by user
$num_items=$this->input->post('num_items'); // total number of laptops
$price=$this->input->post('price'); // total cost
if($id_lap !='')
{
$this->session->set_userdata('num_items',$num_items);
$this->session->set_userdata('price_new',$price);
$this->session->set_userdata('id_lap_new',$id_lap);
$response=array(
'status'=>1,
'num_items'=>$num_items,
'price_new'=>$price,
'id_new_lap'=>$id_lap
);
} else {
$response=array(
'status'=>0
);
}
echo json_encode($response);
}
Я использую Ajax для отправки данных в контроллер.
Спасибо за ответ, я ценю.
Я не могу найти в опции config.php для базы данных сеанса. Даже если я сохраню в базе данных, что будет уникальным ключом для каждой сессии? –
Файл config.php находится в папке приложения. session_id() - уникальный идентификатор, который вы можете использовать. – sriharichander
Это то, что у меня есть для сеанса в config.php $ config ['sess_driver'] = 'files'; $ config ['sess_cookie_name'] = 'ci_session'; $ config ['sess_expiration'] = 7200; $ config ['sess_save_path'] = NULL; $ config ['sess_match_ip'] = FALSE; $ config ['sess_time_to_update'] = 300; $ config ['sess_regenerate_destroy'] = FALSE; –