php - 成功提交表单,但控制台出现一个错误,例如 A Database Error Occurred Error Number: 1048 - Codeigniter
问题描述
当我提交表单成功插入表格中的所有数据,以及在控制台中出现如下错误时,代码有问题吗?,我在错误中发现异常日期,日期显示为 '1970-01-01 '。但是我选择了今天的日期,但错误地只显示了“1970-01-01”;
A Database Error Occurred
Error Number: 1048
Column 'purchase_shopId' cannot be null
INSERT INTO `stock_purchase_history` (`purchase_shopId`, `purchase_productID`, `purchase_quantity`, `purchase_costPrice`, `purchase_TotalRate`, `purchase_tax`, `purchase_taxEmp`, `purchase_sellingPrice`, `purchase_employeeSellingPrice`, `purchase_supplierName`, `purchase_invoice`, `purchase_PurchaseDate`) VALUES (NULL, NULL, NULL, NULL, 0, NULL, NULL, 0, 0, NULL, NULL, '1970-01-01')
Filename: C:/xampp/htdocs/stock/system/database/DB_driver.php
Line Number: 691
我的查询代码
public function insertPurchaseData()
{
$shopId = $this->input->post('shopId');
$productID = $this->input->post('productID');
$quantity = $this->input->post('quantity');
$costPrice = $this->input->post('costPrice');
$PurchaseTotalRate = $quantity*$costPrice;
$taxNormal = $this->input->post('taxNormal');
$taxEmp = $this->input->post('taxEmp');
$supplierName = $this->input->post('supplierName');
$invoice = $this->input->post('invoice');
$PurchaseDate = date('Y-m-d', strtotime($this->input->post('PurchaseDate')));
// normal Selling price
$sellingPrice=($costPrice*$taxNormal)/100+$costPrice ;
// emp selling price
$employeeSellingPrice=($costPrice*$taxEmp)/100+$costPrice;
$purchaseData =array(
'purchase_shopId' => $shopId,
'purchase_productID' => $productID,
'purchase_quantity' =>$quantity,
'purchase_costPrice' =>$costPrice,
'purchase_TotalRate' =>$PurchaseTotalRate,
'purchase_tax' =>$taxNormal,
'purchase_taxEmp' =>$taxEmp,
'purchase_sellingPrice' =>$sellingPrice,
'purchase_employeeSellingPrice'=>$employeeSellingPrice,
'purchase_supplierName' =>$supplierName,
'purchase_invoice' =>$invoice,
'purchase_PurchaseDate' =>$PurchaseDate
);
$this->db->insert('stock_purchase_history',$purchaseData);
}
看下面的ajax代码
if(result == '1234567')
{
$.ajax({
type: "POST",
url: "<?php echo site_url('Con_purchase/add_purchase_for_shop')?>",
dataType: "JSON",
data: {
shopId: shopId,
productID: productID,
quantity: quantity,
costPrice : costPrice ,
taxNormal : taxNormal ,
taxEmp : taxEmp ,
supplierName : supplierName,
invoice : invoice ,
PurchaseDate : PurchaseDate
},
success: function(data)
{ if (data == '1') {
var btn = $(this).closest("tr")
var name = inputData.find("button").prop('disabled', false).css(
"background-color", "green");
} else {
var btn = $(this).closest("tr")
var name = inputData.find("button").prop('disabled', true).css(
"background-color", "#2d7bf4");
}
}
});
return false;
}
我的数据库 在此处输入图像描述
解决方案
您必须将列结构更改为 null 'purchase_shopId'
,因为您已选中 null 复选框。
推荐阅读
- javascript - 如何正确传递道具以更改 JSON 文件中的键?
- javascript - 删除 PayPal Checkout 中的账单地址字段
- php - 在 laravel 项目之间移动用户表
- java - 我想用“\n”分割输入字符串
- github - 在多个环境中运行 GitHub Action
- gulp - Zsh -- gulp 不工作(错误:找不到模块'./lib/argsert')
- android - 如何使用 DataBindingUtil 在 Fragment 中绑定视图?
- javascript - 如果使用 javascript 检查复选框,如何更改文本颜色和字体粗细?
- teamcity - TeamCity 以编程方式构建分支
- eclipse - eclipse Mars中安装错误插件WebSphere Application Server V7