Mam dwie tabele dla tej kategorii produktów, w których przechowuję kategorie produktów, a druga to lista produktów, w której wstawiam produkty po wstawieniu nowego produktu. aby wybrać kategorie z kategorii produktów, ale jeśli chcesz dodać kolejną kategorię, w menu pojawi się opcja "inne", a obszar tekstowy pojawi się i pozwoli Ci utworzyć inną kategorię, mój problem polega na tym, że dodam nowy produkt z istniejącej kategorii w bazie danych nie robi wstawić do dwóch tabel, ale jeśli dodać nowy produkt z nowej kategorii to sukcesem wstawia mojego kontrolera:Wstawka kodu, jeśli nie istnieje i aktualizuje się, jeśli nie
function do_upload() {
$config['upload_path'] = './assets/';
$config['allowed_types'] = 'gif|jpg|png';
$config['max_size'] = '2000';
$config['max_width'] = '2000';
$config['max_height'] = '2000';
$config['new_image'] = './assets/';
$config['overwrite'] = TRUE;
$this->load->library('upload', $config);
$this->form_validation->set_rules('name', 'Product Name', 'required|xss_clean');
$this->form_validation->set_rules('description', 'Product Description', 'required|xss_clean');
$this->form_validation->set_rules('price', 'Price', 'required');
if (!$this->upload->do_upload() || !$this->form_validation->run()) {
$error = array('error' => $this->upload->display_errors());
redirect('add_products');
} else {
$data = $this->upload->data();
$this->thumb($data);
$category = $_POST["prod_category"];
if($category == "2")
{
$category = $_POST["other_category"];
}
$file = array(
'img_name' => $data['raw_name'],
'thumb_name' => $data['raw_name'] . '_thumb',
'ext' => $data['file_ext'],
'product_name' => $this->input->post('name'),
'product_description' => $this->input->post('description'),
'product_price' => $this->input->post('price'),
'product_category' =>$category,
);
$this->db->insert("product_category",array("category"=>$category));
$this->User->insert_prod($file);
$data = array('upload_data' => $this->upload->data());
echo '<script>alert("You Have Successfully Added a new Product!");</script>';
redirect('admin_products','refresh');
}
}
modelu
public function insert_prod($file){
$this->db->insert('product_table',$file);
}
Nie wiem, czy to kwalifikuje się jako odpowiedź: http://andrea.codes/codeigniter-if-record-exists-then-update-if -not-insert/ To zbyt szczegółowe wzorzec ... – SparK
próbował użyć go, ale nie może sprawić, żeby działało. – Christian