我正试图使用php更新我的date_process字段。mysql字段是一个日期类型的字段,我的代码是:
$today = date('Y-m-d');
$data =json_decode($_POST['data'], true);
foreach($data as $value){
// update inventory table
$conn->query("update inventory set cost = {$data[$n]['cost']},
csmt = {$data[$n]['csmt']},
hold = {$data[$n]['hold']},
date_process = $today
where sku = {$data[$n]['sku']}");
所有其他字段都在正确更新,只有date_process返回000-00-00。我看过其他帖子,从我所能看出的内容来看,我的格式是正确的(或者至少我认为我是正确的)。有人能指出我做错了什么吗??
尝试在日期前后添加引号:
$conn->query("update inventory set cost = {$data[$n]['cost']},
csmt = {$data[$n]['csmt']},
hold = {$data[$n]['hold']},
date_process = '$today'
where sku = {$data[$n]['sku']}");
$today
中有什么?它的格式可能是MySQL所没有的。
试试类似的东西:
update inventory set date_process = date_format(curdate(), "%Y-%m-%d");