为什么我用php代码插入数据到mysql中 有的字段显示为空 有的就能出现插入的值 我的代码如下
<?php
include("conn.php");
if ($_POST['submit']){
$sql="insert into message (id,user,title,content,lastdate) " .
"value ('','$_POST[user]','$_POST[title]','$_POST[content]',now())";
mysql_query($sql);
echo "发表成功";
}
?>
这个事phpmyadmin中的内容
id user title content lastdate
1 我的一个标题 我的PHP 2012-04-15
2 _ 我的内容 你的PHP 2012-04-15
回复讨论(解决方案)
mysql_query($sql) or die(mysql_error());
提出结果!
可能不贴你都知道是怎么回事了
echo $sql ; //输出什么结果。另外贴你表结构。
<?php
$conn=@mysql_connect("localhost","root","") or die ("连接不成功");
mysql_select_db("bbs",$conn);
mysql_query("set names 'GBK'");
?>
这个是连接数据库的PHP代码
CREATE TABLE `message` (
`id` tinyint(1) NOT NULL auto_increment,
`user` varchar(25) NOT NULL,
`title` varchar(50) NOT NULL,
`content` tinytext NOT NULL,
`lastdate` date NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=gbk AUTO_INCREMENT=1 ;
这个是插入表的sql语句
echo $sql ;输出的结果是这个
insert into message (id,user,title,content,lastdate) value ('','','测试标题','',now())
echo $sql ; //输出什么结果。另外贴你表结构。
<?php
$conn=@mysql_connect("localhost","root","") or die ("连接不成功");
mysql_select_db("bbs",$conn);
mysql_query("set names 'GBK'");
?>
这个是连接数据库的PHP代码
CREATE TABLE `message` (
`id` tinyint(1) NOT NULL auto_increment,
`user` varchar(25) NOT NULL,
`title` varchar(50) NOT NULL,
`content` tinytext NOT NULL,
`lastdate` date NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=gbk AUTO_INCREMENT=1 ;
这个是插入表的sql语句
没有问题啊。不知道你说的有些字段没有值是指哪个字段?
没有问题啊。不知道你说的有些字段没有值是指哪个字段?
echo $sql ;输出的结果是这个
insert into message (id,user,title,content,lastdate) value ('','','测试标题','',now())
values 还有什么问题吗?
values 还有什么问题吗?
我把value改为values以后
echo $sql ;
insert into message (id,user,title,content,lastdate) values ('','','子哈','',now())
插入的user和content内容还是为空 费解啊 会不会是mysql和表的编码不一样 我安装的是xamp集成环境 我在mysql配置文件里面设置了这个default-character-set=gbk 在[Client]下 在[mysqld]下设置了default-character-set=gbk
已经跟你说过了
mysql_query($sql) or die(mysql_error());
提出结果!
有的字段显示为空 有的就能出现插入的值
你上面INSERT 语句很多值都是'' 为空有什么奇怪?
有的字段显示为空 有的就能出现插入的值
你上面INSERT 语句很多值都是'' 为空有什么奇怪?
我插入的时候是打了很多内容的 但是echo那个语句出来就是现实为空 一模一样的字段内容插入后user和content都为空 但是title不是空的 能插入
mysql_query($sql) or die(mysql_error());
提出结果!
可能不贴你都知道是怎么回事了
已经把这个语句加入了 没有什么提示 插入内容是成功的
if ($_POST['submit']){
print_r($_POST); // 贴出结果。看是否有值
有的字段显示为空 有的就能出现插入的值
你上面INSERT 语句很多值都是'' 为空有什么奇怪?
不是我插入的空值 我插入相同的字段内容到3个字段中 user和content都显示为空 只有title字段显示出我插入的内容
用户:
text错了
$_POST[ content]
看出来了吗
问题解决没有,楼主?我也遇到了一样的问题
请问这个问题解决了吗?