使用php更新mysql中的日期字段


update date field in mysql using php

我正试图使用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");