php - 更新日期字段时为空 - MySQL PHP

标签 php mysql

我正在尝试更新数据库中的日期字段。像这样查询:

$q = "update news set data = STR_TO_DATE('2011-03-05','%Y-%m-%d'), title = '".$title."', content='".$content."',....";

效果很好,但是:

$q = "update news set data = STR_TO_DATE('".$data."','%Y-%m-%d'), title = '".$title."', content='"...";

它不工作:(

我有约会:

$data = $_POST["data"];

它的值为“2013-04-13”。我修剪了日期并在弹出窗口中显示并且值是正确的;请帮助:)

更新 这对我来说很奇怪,但如果我使用:

$q = "insert into news set data = CAST('".$data."' AS DATE), title = '".$title."', content='".$content."'...";

它工作得很好。只插入不更新

表格脚本:

CREATE TABLE IF NOT EXISTS `news` (`id` int(11) NOT NULL AUTO_INCREMENT, `data` date NOT NULL, `title` text NOT NULL, `content` text NOT NULL, `img` text NOT NULL, `n_img` text NOT NULL, PRIMARY KEY (`id`), KEY `id` (`id`)) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=36 ;

最佳答案

您为什么使用 STR_TO_DATE?看起来您的日期格式已经正确。尝试删除它并按原样插入?

虽然可能想先逃避它。

$data = mysql_real_escape_string($_POST["data"]);

关于php - 更新日期字段时为空 - MySQL PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15889893/

相关文章:

php - 登录后无法查看页面

php - 即使返回错误,ajax 也始终运行成功

php - 调用重写的父方法

javascript - 在 Flipclock 插件中设置自定义时间

mysql - 从 MySQL 到 CSV 文件的列名

php - 对同一字符串多次使用 str_replace

MySql 根据其他字段值更新字段值

php - 基于用户输入的MySQL查询

mysql - UNION 2 表很多字段,很少有不同,可以使用 SELECT *吗?

mysql - SQL 的错误代码 #1111