Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php Mysql插入:无法再插入_Php_Mysql - Fatal编程技术网

php Mysql插入:无法再插入

php Mysql插入:无法再插入,php,mysql,Php,Mysql,我正在写新闻并将其插入数据库,我在3年前构建了代码,它运行良好,但我无法再插入,我不明白为什么: $insert=mysqli_query($co,"INSERT INTO articles VALUES('','".addslashes(htmlentities($_POST['title']))."','".time()."','".nl2br(addslashes(htmlentities($_POST['msg'])))."')") or die("insert error: ".mys

我正在写新闻并将其插入数据库,我在3年前构建了代码,它运行良好,但我无法再插入,我不明白为什么:

$insert=mysqli_query($co,"INSERT INTO articles VALUES('','".addslashes(htmlentities($_POST['title']))."','".time()."','".nl2br(addslashes(htmlentities($_POST['msg'])))."')") or die("insert error: ".mysqli_error());
其中表项目获得结构id:int11自动增量、标题:text、日期:int11、消息:text

当我尝试它时,我遇到了插入错误消息,但是mysqli_错误消息是空的,所以我在phpmyadmin上尝试了一个假条目:

INSERT INTO articles VALUES('','testset','1396642210','FUUUUUU')
我得到1366-不正确的整数值:对于第1行的列'id' 但id是自动递增的???:

连接和数据库选择正常 我真的不明白发生了什么事,我处理这个请求已经有2/3年了,而且一直在工作。。。
有什么想法吗?

您已经迁移到MySQL 5.7,它有了新的安全性和数据完整性检查:INT列不能再像以前那样保存字符串值

使用默认值,或仅在插入时不添加列:


如果列顺序发生变化,则安全性较低。

最好不要将整数值加引号,这可能适用于时间戳列

对于自动递增的列,如您的id,您可以将其从查询中删除,然后添加要在查询中填充的列:

INSERT INTO `articles` (`title`, `timestamp`, `msg`) VALUES ('testeset', 1396642210, 'FUUUUUU');

addslasheshtmlentities$\u POST['title']=>使用准备好的语句。它们将更加安全。删除1396642210周围的引号,假设列是整数类型。也许您已经升级了MySQL,并且它的语法实施也发生了变化。对于GroupBy,您最近是否更改了任何可能影响此设置的内容?MySQL版本?PHP版本?网络服务器版本?网络服务器?重复做同一件事永远不会产生不同的结果,因此某些事情一定发生了变化。似乎来自版本,谢谢!谢谢,这是真的,我没有遵循版本更改,使用默认值工作,谢谢:
INSERT INTO articles VALUES (DEFAULT, ?, ?, ?);
INSERT INTO `articles` (`title`, `timestamp`, `msg`) VALUES ('testeset', 1396642210, 'FUUUUUU');