public function insert_all() {
$get_data = $this->call_api->fetchData('GET', 'http://89.201.137.7:8082/datasnap/rest/grupeartikala/lista', false);
$response = json_decode($get_data);
$data = $response->result[0]->grupe_artikala;
foreach ($data as $item) {
$sku = ltrim($item->grupa_artikla);
$product = array(
'sku' => $sku,
'title' => $item->naziv,
'enabled' => $item->enabled
);
try {
$this->db->insert('products', $product);
$db_error = $this->db->error();
if (!empty($db_error)) {
throw new Exception("Database error! Error Code [" . $db_error['code'] . "] Error: " . $db_error['message']);
}
} catch (Exception $e) {
log_message('error:', $e->getMessage());
return;
}
}
return $data;
}
我提取一些数据并保存到数据库中,大约有200个元素。
public function insert_all_products()
{
$this->luceed_model->insert_all();
redirect(site_url('/luceed_products/products'));
}
我从控制器调用模型,这个方法在表单提交时运行。
<?php echo form_open('/luceed_products/insert_all_products', 'class="ciForm"'); ?>
<input type="submit" name="submit" value="Save To Database">
</form>
还有表单。我怎样才能让它只在条目是唯一的时候才提交数据呢?我试着用$this-〉db-〉where('sku!=',$sku)做一个条件,然后用$this-〉db-〉insert在条件为真的时候插入到数据库。我不认为我可以用set_validation()来检查唯一性,因为我没有存储输入字段的数据。
编辑:我在数据库中将SKU设置为UNIQUE,现在当我尝试保存重复的数据时,我得到了一个数据库错误重复条目。
- 错误处理设置为TRUE的数据库错误**:
发生数据库错误错误号:1062
关键字'sku'的条目'1'重复
插入到products
(sku
,title
,enabled
)值中("0001","波克里瓦扎格拉武","D")
文件名:C:/拉拉贡/www/luceed/系统/数据库/数据库驱动程序. php
行号:692
- 数据库错误,没有通过codeigniter进行错误处理**:
遇到PHP错误严重性:注意事项
消息:未定义的索引:错误:
文件名:cn.php
行号:181
回溯:
文件:C:\拉腊贡\www.luceed\应用程序\模型\luceed_模型. php行:40功能:日志消息
文件:C:\拉腊贡\www.luceed\应用程序\控制器\luceed_产品. php26功能:插入全部
文件:C:\拉腊贡\www\luceed\index.php行:315功能:要求一次
1条答案
按热度按时间ee7vknir1#