conn.php<?php
/*
 * Created on 2012-4-5
 *
 * To change the template for this generated file go to
 * Window - Preferences - PHPeclipse - PHP - Code Templates
 */ $conn = @ mysql_connect("localhost", "root", "") or die("数据库链接错误");
mysql_select_db("bbs", $conn);
mysql_query("set names 'GBK'"); //使用GBK中文编码;
?>add.php<?php
/*
 * Created on 2012-4-6
 *
 * To change the template for this generated file go to
 * Window - Preferences - PHPeclipse - PHP - Code Templates
 */
include("conn.php");
 if($_POST['submit']){
  $sql="insert into message(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"/><br> 标题:<input type="text" name="title"/><br>
 内容:<textarea name="content" ></textarea><br>  <input type="submit" name="submit" value="提交留言"/>
  </form>sql语句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 ;不知道是哪里出了问题,一直插入不进数据。。

解决方案 »

  1.   

    $sql="insert into message(id,user,title,content.lastdate)" .
    你完全可以不去管id的值
    $sql="INSERT INTO `message` (`user`, `title`, `content`, `lastdate`) 
          VALUES ( '$_POST[user]', '$_POST[title]', '$_POST[content]', now() ) ";
      

  2.   

    mysql_query($sql) or die(mysql_error());  //这样就会显示错误了。
      

  3.   

    显示这个错误 Column count doesn't match value count at row 1
      

  4.   

    $sql="insert into message(id,user,title,content,lastdate)" .    
      "values('','$_POST[user]','$_POST[title]','$_POST[content]',now())";content,lastdate   逗号写成.了。