热烈祝贺台州朗动科技的站长论坛隆重上线!(2012-05-28)    热烈庆祝伟大的祖国60周年生日 点击进来我们一起为她祝福吧(2009-09-26)    站长论坛禁止发布广告,一经发现立即删除。谢谢各位合作!.(2009-08-08)    热烈祝贺台州网址导航全面升级,全新版本上线!希望各位一如既往地支持台州网址导航的发展.(2009-03-28)    台州站长论坛恭祝各位新年快乐,牛年行大运!(2009-01-24)    台州Link正式更名为台州网址导航,专业做以台州网址为主的网址导航!(2008-05-23)    热烈祝贺台州Link资讯改名为中国站长资讯!希望在以后日子里得到大家的大力支持和帮助!(2008-04-10)    热烈祝贺台州Link论坛改名为台州站长论坛!希望大家继续支持和鼓励!(2008-04-10)    台州站长论坛原[社会琐碎]版块更名为[生活百科]版块!(2007-09-05)    特此通知:新台州站长论坛的数据信息全部升级成功!">特此通知:新台州站长论坛的数据信息全部升级成功!(2007-09-01)    台州站长论坛对未通过验证的会员进行合理的清除,请您谅解(2007-08-30)    台州网址导航|上网导航诚邀世界各地的网站友情链接和友谊联盟,共同引领网站导航、前进!(2007-08-30)    禁止发广告之类的帖,已发现立即删除!(2007-08-30)    希望各位上传与下载有用资源和最新信息(2007-08-30)    热烈祝贺台州站长论坛全面升级成功,全新上线!(2007-08-30)    
便民网址导航,轻松网上冲浪。
台州维博网络专业开发网站门户平台系统
您当前的位置: 首页 » PHP/Perl编程 » PHP+MYSQL留言本

PHP+MYSQL留言本

论坛链接
  • PHP+MYSQL留言本
  • 发布时间:2007-10-04 19:46:01    浏览数:5172    发布者:superadmin    设置字体【   
学编程,我觉得最重要的是动手实践.今天第一天学PHP~~`~为了熟悉下这种语言~~~我开始自己编一个PHP+MYSQL的留言本.
从易到难`~~~先由简单的开始.功能以后慢慢完善.

留言本最基本的功能就是:
1:用户写留言
2:把数据写入数据库
3:显示所有留言
下面就开始制作我的留言本

首先在PHPMYADMIN下建立一 guest_book数据库 然后在该数据库下建立一个contents的表 该表下建立两个字段
分别为 name 和 content
SQL语句如下:
CREATE TABLE `contents` (
`id` int(11) NOT NULL auto_increment,
`name` varchar(20) NOT NULL default '"no name"',
`content` mediumtext NOT NULL,
PRIMARY KEY (`id`)
) TYPE=MyISAM AUTO_INCREMENT=6

好了数据库建好了 ~~`下面开始写程序了
该程序包含三个页面post.htm(留言提交页面) index.php(留言显示页面) updata.php(把数据写入数据库的页面)

post.htm代码如下:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>留言本</title>
</head>
<body>
<form action="updata.php" method="post" name="name1">
姓名:<input type="text" name="user_name"><br>
留言:<textarea name="post_contents" rows="10" cols="50"></textarea>
<input type="submit">
</form>
</body>
</html>

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 "<table><tr><td>姓名:".$rs->name."</td></tr>";
echo "<tr><td>留言:".$rs->content."</td></tr></table><br/>";
}?>


至于分页,页面转向等功能暂时不用上去.为得就是使程序尽量精简.麻雀虽小.但是留言本的核心功能全在这里了.

其中还需要再多说几句

$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与历史记录~~~然后问题就解决了

好了,今天就写到这里`~`明天继续完善这个留言本~~
娱乐休闲专区A 影视预告B 音乐咖啡C 英语阶梯D 生活百科
网页编程专区E AMPZF HTMLG CSSH JSI ASPJ PHPK JSPL MySQLM AJAX
Linux技术区 N 系统管理O 服务器架设P 网络/硬件Q 编程序开发R 内核/嵌入
管理中心专区S 发布网址T 版主议事U 事务处理