conn.php 数据库连接
<?php
$conn = mysql_connect("localhost", "root","") or die("数据库连接错误");
mysql_select_db("bbs",$conn);
mysql_query("set names 'GBK'");//使用GBK中文编码;?>add.php操作页面
<?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" name="title"/><br/>
内容:<textarea name="content"></textarea><br/>
<input type="submit" name="submit" value="发布留言"/> </form>
<?php
$conn = mysql_connect("localhost", "root","") or die("数据库连接错误");
mysql_select_db("bbs",$conn);
mysql_query("set names 'GBK'");//使用GBK中文编码;?>add.php操作页面
<?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" name="title"/><br/>
内容:<textarea name="content"></textarea><br/>
<input type="submit" name="submit" value="发布留言"/> </form>
mysql_query('set names gbk');记得gbk两边没引号
例如 $a=$_POST['WHAT']; 在插入数据库之前做一个测试判断POST过来的变量是否为空
empty 如果不为空那么再赋值然后在插入前
echo $Sql;
exit();你就知道哪里有问题了
insert into message (id,user,title,content,lastdate) values ('defualt_id','ssss','dddds','sssss',now())
id tinyint(1) 否 无 主键
user varchar(25) gb2312_chinese_ci 否 无
title varchar(50) gbk_chinese_ci 否 无
content tinytext gbk_chinese_ci 否 无
lastdate date 否 无
insert into message (id,user,title,content,lastdate) values (defualt,'ssss','dddds','sssss',now())
看不见?
我感觉你第一次成功是将0或者1写入到这个表的id里了!然后后面的插入就变成针对表中已经存在的id进行插入这样就出错了!
我建议你调试的时候再执行sql语句之前,把这条sql语句输出一下,然后粘到你的phpMyAdmin中或者其他的mysql管理工具中执行一下,看下能不能成功!
所以你必须每次都插入唯一的编号,而不能像这样缺省 id
$sql="insert into message (id,user,title,content,lastdate) values ('','$_POST[user]','$_POST[title]','$_POST[content]',now())";
<?php
$user=$_POST['user'];
$title=$_POST['title'];//最好能处理下$title=htmlentities(trim($_POST['title']), ENT_QUOTES,'gbk');
$content=$_POST['content'];
$lastdate=time();//如果你的数据表中是存的秒数的话
$sql="insert into message (user,title,content,lastdate) values ($user,$title,$content,$lastdate)";
//echo $sql;
//exit();
mysql_query($sql);
?>