updata.php页面代码如下:
name=_POST['user_name'];
content=_POST['post_contents'];
conn=mysql_connect("localhost:6033", "root", "");
mysql_query("set names utf-8"); //解决中文乱码问题
mysql_select_db("guest_book");
exec="insert into contents (name,content) values ('"._POST['user_name']."','"._POST['post_contents']."')";
result=mysql_query(exec);
?>
index.php页面代码如下:
conn=mysql_connect ("localhost:6033", "root", ""); //打开MySQL服务器连接
mysql_select_db("guest_book"); //链接数据库
mysql_query("set names utf-8"); //解决中文乱码问题
exec="select * from contents"; //sql语句
result=mysql_query(exec); //执行sql语句,返回结果
while(rs=mysql_fetch_object(result))
{
echo "姓名:".rs->name."";
echo "留言:".rs->content."
";
}?>
至于分页,页面转向等功能暂时不用上去.为得就是使程序尽量精简.麻雀虽小.但是留言本的核心功能全在这里了.
其中还需要再多说几句
conn=mysql_connect ("localhost:6033", "root", "");
这一句很重要 一开始我用的是 conn=mysql_connect ("127.0.0.1", "", "");
怎么弄都不见数据进数据库去~~~~但是又没报错~~后来看了半天才知道 原来哪个127的地方应该在PHPMYADMIN里看服务器名一击数据库端口是什么~~~还有ROOT那里就是mysql用户名了,后面的是密码
还有个问题就是 汉字乱码问题
在result=mysql_query(exec); 语句前面加上mysql_query("set names gb2312");或者mysql_query("set names utf-8");
可疑防止提交进数据库的汉字以乱码形式存放在数据库中 以及防止 从数据库中查询出来的包含汉字的数据以乱码显示
有时候尽管这样设置了后还是无法正常显示汉字~~~~
我就遇见了这样的情况,由于我是在本地调试的,每次都要把浏览器上的那个字符编码调到utf-8才能正常显示汉字
默认的编码总是ISO-8859-1 于是google了一下`~原来是apache设置不对.于是找到 httpd.conf 设置文件
把 default-character-set=ISO-8859-1 改为 default-character-set=utf-8
然后再 service httpd restart 重启appache 清除所有cookies与历史记录~~~然后问题就解决了
好了,今天就写到这里`~`明天继续完善这个留言本~~~
http://blog.csdn.net/sputnik/archive/2007/02/11/1507954.aspx