建表代码:
CREATE TABLE `bbs2` (
  `id`  int(10)  NOT NULL auto_increment,
  `user`  varchar(10) NOT NULL  default '0',
  `title`  varchar(10) NOT NULL,
  `content`    text  NULL,
  `lastdate` date NOT NULL,
   PRIMARY KEY  (`id`)
)
我把id定义为自动递增,为什么“insert into bbs2 (id,user,title,content,lastdate)values ('','zkf','zkf','zkf',now());”这条语句插不进去!这个php代码!
<?php
include("conn.php");
if($_POST['submit']){
$sql = "insert into bbs2 (id,user,title,content,lastdate)" . 
"values ('','$_POST[user]','$_POST[title]','$_POST[content]',now())";
mysql_query($sql);
echo "发表成功";
}
?><form action="add.php" method="post">
用户:<input type="text" name="user" size="20" /><br>
标题:<input type="text" name="title" /><br>
内容:<textarea name="content"></textarea><br>
<input type="submit" name="submit" value="发表留言" />
</form>
发表后数据库仍然没有那个数据!
但当我手动填id的时候就可以插入。
比如 $sql = "insert into bbs2 (id,user,title,content,lastdate)" . 
"values ('1','$_POST[user]','$_POST[title]','$_POST[content]',now())";

解决方案 »

  1.   

    insert into bbs2 (id,user,title,content,lastdate)values (default,'zkf','zkf','zkf',now())
    或者
    insert into bbs2 (user,title,content,lastdate)values ('zkf','zkf','zkf',now())
      

  2.   

    改成default是可以了,但是我插入中文的时候显示的是一堆问号而不是乱码哦,怎么解决呢,请教高手
      

  3.   

    插入前执行mysql_query("set names 'gbk'")或者mysql_query("set names 'utf8'");根据你的数据库编码选择
      

  4.   

    去掉没用哦,我改成null或者default就可以的