Php 将类似日期的字符串保存到数据库,但MYSQL将其转换为十进制字符串

Php 将类似日期的字符串保存到数据库,但MYSQL将其转换为十进制字符串,php,mysql,decimal,varchar,Php,Mysql,Decimal,Varchar,我正在尝试使用一行php代码将字符串变量保存到mysql中 'UPDATE `printed` SET `letterReturned`= '.$returnedDate.' WHERE `defendantId` = '. $defendantId.';'; $returnedDate是一个类似于“10/01/2018”的字符串。我已经用gettype验证了当它进入数据库时是一个字符串,但在数据库中的结果是:0.004955401387512388 它究竟是如何保存为十进制的呢?我被难住了

我正在尝试使用一行php代码将字符串变量保存到mysql中

'UPDATE `printed` SET `letterReturned`= '.$returnedDate.'  WHERE `defendantId` = '. $defendantId.';';
$returnedDate是一个类似于“10/01/2018”的字符串。我已经用gettype验证了当它进入数据库时是一个字符串,但在数据库中的结果是:0.004955401387512388

它究竟是如何保存为十进制的呢?我被难住了,一直无法通过谷歌搜索找到任何与此相关的信息。这种东西一定有个名字

非常感谢您的任何想法。请开导我。

有趣的情况!!!:D

请注意,计算的2018年10月1日=0.004955401387512388

原始查询分配中缺少引号,然后在向表中插入值之前执行算术除法

尝试:

正如评论中所建议的,请查看以获得澄清。

有趣的情况!!!:D

请注意,计算的2018年10月1日=0.004955401387512388

原始查询分配中缺少引号,然后在向表中插入值之前执行算术除法

尝试:


正如评论中所建议的,请查看以获得澄清。

返回的字母的数据类型是什么?发布表架构确实有助于您引用变量您对SQL注入非常开放。我建议为和使用准备好的语句和参数绑定文档。这样,你就不用担心引用变量的问题了。顺便说一句,你得到小数点的原因是因为它在做数学运算,因为它没有被引用:10除以10除以2018…返回的字母的数据类型是什么?发布您的表模式确实有助于您引用您的变量您完全可以接受SQL注入。我建议为和使用准备好的语句和参数绑定文档。这样,你就不必担心引用变量的问题了。顺便说一句,你得到小数点的原因是因为它在做数学,因为它没有被引用:10除以10除以2018…真有趣。事后看来,发生的事情是显而易见的。正斜杠用作除法符号并使用不正确的引号导致了此问题。其他人指出了过时的语法,但这段代码是出于内部目的,所以我做了最快的。我的错误。谢谢大家的帮助。真有趣。事后看来,发生的事情是显而易见的。正斜杠用作除法符号并使用不正确的引号导致了此问题。其他人指出了过时的语法,但这段代码是出于内部目的,所以我做了最快的。我的错误。谢谢大家的帮助。
$query = "UPDATE `printed` SET `letterReturned`= '".$returnedDate."'  WHERE `defendantId` = ". $defendantId.";";