add.php 代码:
<?php
 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" size="10" name="user" /><br />
标题:<input type="text" size="25" name="title" /><br />
内容:<textarea name="content"></textarea><br />
<input type="submit" name="submit" value="发布" />
</form>
这是conn.ph 代码:
<?php
 $conn = @ mysql_connect("localhost", "admin", "admin") or die ("数据库出错");
 mysql_select_db("bbs2", $conn);
 mysql_query("set names `gbk`");
?>
总是提示:发布成功了.
但是数据库里总是没有东西.我用:insert into message (id, user, title, content, lastdate) values ("1", "aa", "dd", "cc", now()); 
这样直接在sql里就可以cha入数据库.
上面的代码有什么问题吗?总是不行.

解决方案 »

  1.   

    如果id自增的话,不要传id进去
      

  2.   

    本帖最后由 xuzuning 于 2012-11-08 14:50:40 编辑
      

  3.   

    首先echo $sql;看下这个打印出来的SQL能不能入库
      

  4.   

    SQL语句有问题,试试:
    $sql = "insert into message (id, user, title, content, lastdate) values ('','".$_POST[user]."','".$_POST[title]."','".$_POST[content]."',now())";
      

  5.   

    找到原因了.谢谢各位.
    加了 mysql_query($sql) or die(mysql_error());  后发现错误在执行插入语句时,id的值不应该像以前那样写 '',而应该写NULL
    多谢.结贴