程序不能将数据写入数据库

cph1737 2010-07-29 08:11:47
为什么以前写好的程序现在不能添加数据,以前都能添加的,但删查改功能都行的,像INSERT INTO `news`(`id`,`title`,`content`,`keyw`,`author`,`lastdate`) VALUES('','1','1','1','1',now())
插入的程序都这个样子,请问这是什么原因??
请各位高手相助!!!
...全文
72 点赞 收藏 12
写回复
12 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
Dleno 2010-07-30
插入以:
insert into tablename set `字段名`='$字段值',`字段名`='$字段值',`字段名`='$字段值',`字段名`='$字段值';
需要什么字段写什么字段.
回复
pengyayun 2010-07-29
可能是mysql数据库的问题了
回复
CunningBoy 2010-07-29
CREATE TABLE `news` (
`id` int(11) NOT NULL auto_increment,
`title` varchar(20) NOT NULL,
`content` mediumtext NOT NULL,
`keyw` varchar(20) NOT NULL,
`author` varchar(20) NOT NULL,
`lastdate` datetime NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312 AUTO_INCREMENT=75 ;

表结构中id是自增的(auto_increment),所以你在插入的时候id不用赋值,赋值是插入不了的。
回复
amani11 2010-07-29
顶楼就回复你了

自增的id,没必要指定值的
回复
cph1737 2010-07-29
[Quote=引用 7 楼 amani11 的回复:]
建这么一个文件试试???打印了什么

PHP code

<?php
include("conn.php");//确认这么文件连接数据库正常
$sql = "INSERT INTO `news` (`title`,`content`,`keyw`,`author`,`lastdate`) VALUES('2','2','2','2',now())";
if(mysql_query($……
[/Quote]
true 我想原因可能是没有传ID
回复
amani11 2010-07-29
建这么一个文件试试???打印了什么

<?php
include("conn.php");//确认这么文件连接数据库正常
$sql = "INSERT INTO `news` (`title`,`content`,`keyw`,`author`,`lastdate`) VALUES('2','2','2','2',now())";
if(mysql_query($sql))
{
echo 'true';
}
else
{
echo 'false';
}
?>
回复
cph1737 2010-07-29
[Quote=引用 5 楼 amani11 的回复:]
如果所以程序都不能添加数据

确认下INSERT权限,给了账户

虽然可能性很低,你也检测下硬盘空间
[/Quote]
我现在就是所以程序都不能添加这种情况
回复
amani11 2010-07-29
如果所以程序都不能添加数据

确认下INSERT权限,给了账户

虽然可能性很低,你也检测下硬盘空间
回复
kyzy_yy_pm 2010-07-29
不知道报不报错,如果有错误将错误打出来看看
回复
kyzy_yy_pm 2010-07-29
你的id是怎么设置的啊,是自增的么?如果不是请指定id,如果是请将id值设置成default
INSERT INTO `news`(`id`,`title`,`content`,`keyw`,`author`,`lastdate`) VALUES('default','1','1','1','1',new())
或者
INSERT INTO `news`(`title`,`content`,`keyw`,`author`,`lastdate`) VALUES('1',1','1',now())
回复
cph1737 2010-07-29
[Quote=引用 1 楼 amani11 的回复:]
,id自增的话

改成这样
INSERT INTO `news`(`title`,`content`,`keyw`,`author`,`lastdate`) VALUES('1','1','1','1',now())

如果不对,贴出表结构
[/Quote]
//php代码
<?php
include("conn.php");
if(isset($_POST[btn1]))
{
$sql="INSERT INTO `news`(`id`,`title`,`content`,`keyw`,`author`,`lastdate`) VALUES('','$_POST[title]','$_POST[content]','$_POST[keyword]','$_POST[author]',now())";
echo $sql;
$rs=mysql_query($sql);
if($rs){
echo "<script>alert('新闻添加成功!');location.href='index.php';</script>";
}
}
//表结构
CREATE TABLE `news` (
`id` int(11) NOT NULL auto_increment,
`title` varchar(20) NOT NULL,
`content` mediumtext NOT NULL,
`keyw` varchar(20) NOT NULL,
`author` varchar(20) NOT NULL,
`lastdate` datetime NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312 AUTO_INCREMENT=75 ;
注:以前我这个程序能添加进数据的,现在不能,我电脑里所有的程序现在都不能添加数据了,真不知道是什么原因
回复
amani11 2010-07-29
,id自增的话

改成这样
INSERT INTO `news`(`title`,`content`,`keyw`,`author`,`lastdate`) VALUES('1','1','1','1',now())

如果不对,贴出表结构
回复
发动态
发帖子
基础编程
创建于2007-09-28

2.1w+

社区成员

从PHP安装配置,PHP入门,PHP基础到PHP应用
申请成为版主
社区公告
暂无公告