第一篇:留言板回复功能实现
第8周留言板回复功能实现
日期:4-20 课程名称:asp网站制作 课时数:2 教学目标:
知识与技能:通过URL和表单传值实现回复功能
过程与方法:留言板回复功能操作。
情感与价值观:通过小实例的制作和完成激发学生的学习兴趣 教学重点:留言回复操作 教学难点:传值的理解
教法:讲授、任务驱动,分组教学 教学过程:
一、回顾:用户权限设置
留言板设置不同用户权限,对不同的用户有不同的操作。一般用户只能发表留言,管理员可以对留言删除、回复。
用户权限修改以后,message表中的字段也要做相应改变,添加回复字段“m_reply”
二、留言回复页面制作
留言显示页面的删除和回复,是对权限为管理员的用户才能有的操作,所以需要通过判断权限来控制。
1、在登陆时用session保存权限
2、在显示页面判断权限并且要传递m_id参数过去
三、回复功能制作
要实现删除功能,需要有回复页面传递m_id和回复内容m_reply到后台,再进一步完成的是访问数据库,更新相应的记录的m_reply字段。所选记录的依据,就是m_id,由index.asp传递到reply.asp再传递到mreply index.asp
reply.asp
mreply.asp
四、总结
1、用户权限设置,数据库设置
2、session内建对象
3、参数传递
4、回复功能实现
第二篇:留言板回复藏头诗精选
留言板回复藏头诗精选
朋友们,对于来我空间做客的好友或者非好友,我真诚的说声谢谢,特别是那些在我空间留下笔迹的朋友,紫陌感谢你们的厚爱和支持。由于这几天心情实在太糟,饮酒之后,情绪化的删掉了空间所有的东西,但是我把好友视为上宾,留下了我对好友给我留言的回复,一般都是藏头诗(姑且这样认为吧,朋友见笑了),紫陌才情有限,也就是乱涂一通,但是绝对是真诚之意。现在粘贴在这儿,供大家欣赏:
紫陌凌霄:【紫】嫣清雅绽芳容,【陌】 上幽香漫春风,【凌】寒雪消春来早,【霄】 月柳梢夜伴卿。
【紫】梦呢喃春雨凄,【陌】上蝶舞恋花枝,【凌】乱天涯芳草稀,【霄】汉娇花心已痴。
【紫】心传香远,【陌】尘泪未干,【凌】云空有志,【霄】晨山骨寒。
【紫】阁红楼春意浓,【陌】上花开与卿逢,【凌】空翱翔北归雁,【霄】汉征程笑春风。
1,芳草: 【芳】草连天迷远望,【草】色萋萋满路春。
2,小家碧玉:【小】阁低窗香草蓬,【家】居细柳春意浓。【碧】山终日思无尽,【玉】笙夜送醉芙蓉。
3,心若无尘:【心】 有灵犀一点通,【若 】是有缘醉春风。【无】 端惹得桃花泪,【尘】 埃空留杏叶青。
4,清清小溪:【清】 雅灵香沐春风,【清】 逸飘柔烟雨中。【小】 窗风雨惹人醉,【溪】 声雨声分不清。
5,思思心雨:【思】 海正叹江南景,【思 】绪随风又一春。【心】 摇只待东窗晓,【雨】 洒轻黄柳条荫。
6,雨蝶: 【雨】 润荷池映垂柳,【蝶 】恋春花吐幽香。
7,紫菱儿: 【紫 】气东来艳春归,【菱】 歌香脆韵春魂,【儿】 女沐浴春阳美。
8,点亮心灯:【点】 点不离杨柳岸,【亮】 艳紫红栖春庵。【心】 似春水无涟漪,【灯】 火春夜赏花闲。
9,三十五了:【三 】月桃花雨纷纷,【十】 度有春未逢君。【五】 湖四海空间聚,【了】 解心愿是缘分。
10,水韵幽兰:【水】 面无尘春更清,【韵 】白娇红花更浓。【幽】 庭小院暗香里,【兰】 质蕙心醉青风。
11,爱的甜蜜:【爱】 赏紫陌春雨迟,【的】 应踏春折柳枝。【甜 】迷蝶醉乱起舞,【蜜】 蜂嗡嗡采花蜜。
12,和风细雨:【和 】风细雨一叶舟,【风 】吹香阁小洞幽。【细 】草河边北归雁,【雨 】淋翠柳柳自羞。
13,回眸泪倾城:【回】 眸一笑百媚生,【眸】 明皓齿是俊英,【泪】 自长流花春俏,【倾】 山春景烟雨中,【城 】里城外意相通。
14,碧水青莲:【碧】 湖春水生紫烟,【水】 绕荷花月满船。【青】 荷恋水护刺茎,【莲】 花岸边柳丝缠。
15,空谷幽兰:【空 】蒙烟雨恋江南,【谷 】雨未到情雨绵。【幽 】情往事已不见,【兰】 质蕙心付华年。
16,浪漫: 【浪】 萍春风诚多益,【漫】 舞清歌心自通。
17,孤影凝眸:【孤】 听春风杨柳曲,【影】 动清池品诗书,【凝】 指轻弹凤凰泪,【眸】 间盈盈深情足。
18,花开灿烂:【花】 露初开喜春雨,【开】 花仅占春几许?【灿】 烂春景终有尽,【烂 】漫心境存心渠。
19,雨中回眸:【雨 】细长柳柳翠堤,【中 】有诗意意成诗,【回 】首望春春明媚,【眸 】眼流泪泪化痴。
20,花香满园:【花 】开紫陌陌上花,【香 】山吐幽醉万家。【满 】池春水何人爱?【园】 中桃李人人夸!
21,飞雪: 【飞】香走红满天春,【雪】肤花貌醉乾坤。
22,心静如水:【心】 起涟漪江南春,【静】 雨心愁泪纷纷,【如 】烟似雾花开处,【水】 剪双眸点绛唇。
23,已若成风:【已】 消残雪又是春,【若】 水佳人思梦君,【成】 韵含风枝头鸟,【风】 住尘香草木深。
24,沧海一束:【沧 】海明月珠有泪,【海 】吹春风人亦醉。【一】 灯荧荧照孤影,【束 】心痴情伊憔悴。
25,依梦:【依】山依水梦锦秀,【梦】美梦甜依相思。
26,梦的衣裳:【梦】 蝶嬉闹醉春花 【的】 应喜雨润柳芽。【衣】 遮玉体玲珑倩,【裳】 裙芙蓉艳桃花。
27,快乐天使:【快】 风一瞬斜雨帘 【乐】 饮闲游醉春庵。【天】 涯苍翠青青漫,【使】 君无奈何时还?
28,烟雨梨花:【烟】添柳色疑似仙,【雨】过残红泪潸潸。【梨】花满巷玉莺叫,【花】间蝶舞舞蹁跹。
29,丽影飘香:【丽】质仙姿舞春风,【影】动倒景现聘婷。【漂】泊浮萍红尘事,【香】霭潜来紫陌情。
30,胭脂一笑醉红尘:【胭】脂亮艳桃正红,【脂】粉沁香散春风。【一】曲悲歌唱不尽,【笑】看江湖付平生。【醉】听清吟笙歌起,【红】颜恋情玉妆啼,【尘】世相逢切珍惜。
31,真情梅: 【真】情梅花舞袖香,【情】真意切露芬芳,【梅】花满枝空断肠。
32,梦荷: 【梦】洒春阁思香荷,【荷】恋夏雨清池梦。
33,缘萍: 【缘】聚空间是姐妹,【萍】水相逢捧诚心。
34,雨后清荷:【雨】摆细柳柳翠堤,【后】夜恋花花开迟。【清】溪流水水柔净,【菏】莲飘香香满池。
35,月儿弯弯:【月】融暗香桃花红,【儿】女嗅春逾寒冬,【弯】桥流水愁何在?【弯】眉秀发恋春风。
36,深谷幽兰:【深】夜美女入紫苑,【谷】雨清明雨未轩。【幽】园独凉春还早,【兰】花一丛居涧间。
37,惠质雅馨:【惠】心忽赠祝福词,【质】丽妙语暖人心。【雅】倩娉婷羞月貌,【馨】岁桃花彩蝶飞。
38,杨柳青青:【杨】柳青青柳絮飞,【柳】暗花明春事深。【青】光好去莫惆怅,【青】衫紫衣舞瑶琴。
39,在水一方:【在】 春紫陌百花艳 【水】 边珠翠香弥漫 【一】 时节气思贤君 【方】 寸花笺寄婵娟。
40,幽香雪儿:【幽】音绕耳泪潸潸,【香】语绵绵情难断,【雪】漫瑶池仙子笑,【儿】郎脉脉奇思篇。
【幽】谷叠翠荡清音,【香】蕊娇羞招痴魂,【雪】花轻舞心飘絮,【儿】郎韵词赋情心。
41,丽水佳人:【丽】花幽香蝶双欢,【水】护娇莲雾似烟,【佳】人秀目凝眸处,【人】后相思泪潸潸。
第三篇:实验10 Servlet实现用户留言板
实验九 Servlet实现用户留言板
专业班级: 软件1102学号:201116040225姓名:李云娜
一、实验目的综合应用JSP+JavaBean+Servlet+JDBC技术,设计一个留言板,掌握Java Web开发的基本技术和方法。
二、实验内容
1.设计数据库,保存用户及留言信息。
2.应用JSP技术,设计留言板主页面。
3.应用JavaBean,保存留言信息。
4.应用Servlet技术,设计数据库存储控制和信息显示控制。
5.设计JSP页面,实现留言信息显示。
三、实验方案
四、实验结果
五、分析和总结
第四篇:留言板
日照职业技术学院毕业设计(论文)
php留言板系统
学生姓名 院 部
电子信息科学与工程学院 专 业 计算机应用技术 指导老师 鲁 红 日 期 2015-05-19
目录
一 留言板简介..........................................................................................................................................4 二 留言板设计原理..................................................................................................................................4 三 四 五 PHP技术介绍...................................................................................................................................4 PHP技术优点...................................................................................................................................4 MYSQL介绍......................................................................................................................................6
六 留言板系统的概要设计......................................................................................................................6(一)系统开发环境...............................................................................................................................6(二)php语言选择...............................................................................................................................6(三)系统功能.......................................................................................................................................7 七 留言板详细设计..................................................................................................................................7(一)数据库设计...................................................................................................................................8(二)留言板数据库连接 写入和保存..................................................................................................9(三)留言板文件夹中文件的介绍.....................................................................................................15(四)留言板首页设计.........................................................................................................................15 八 总结....................................................................................................................................................15 九 留言板特色和不足............................................................................................................................15 参考文献:................................................................................................................................................16
第1页
留言板系统
摘要:随着Internet的发展,网站的作用越来越重要,被称之为继广播、报纸、杂志、电视后的
第五种媒体——数字媒体,拥有众多优势,所以现在不少企业都有或正在建设自己的网站。而留言板作为网站重要的一个部分,从来就是一个大家交流的平台!留言板是一种最为简单的BBS应用,借助留言板,浏览者可以张贴留言的方式给站长、版主或其他浏览者进行留言和提问。
本文主要介绍留言板系统的设计思路和制作过程,从留言板的重要性开始,介绍我的留言版采用的PHP技术和MYSQL数据库,进而阐述整个留言板系统的制作过程和具体的设计思路。该留言板较全面地利用PHP技术实现留言板的基本功能:留言、查看、删除,并增加了一些特色功能。最后介绍自己在设计过程的心得体会。关键词:留言板,PHP,MYSOL数据库
第2页
引言
Internet起源于20世纪60年代末、70年代初,当时,美国国防部为了将充斥于军事基地内各种厂商的电脑主机互连,让它们可以进行数据交换以便研究工作顺利进行,于是成立了ARPA网络计划。ARPA计划尝试建设1个网络系统,它可将各种不同厂商的电脑连接起来。随着这个计划的成功,各学术单位,研究机构也纷纷与ARPA计划所建立的ARPANet连接。到了20世纪80年代,Internet这个名词因势产生,它代表着这10年来所构建涵盖全球各地的网络系统。从1990年起,商业使用的Internet在美国急速地扩大,而Internet也从原来属于少数人使用的网络系统转变为普通百姓也能够使用的网络系统。
最初的Internet资源服务都还停留在文本模式,1989年,量子物理实验室(CERN)下的1个研究小组着手开发1种全新的Internet服务,它可以在网络上传送图片、文本、影像、声音等多媒体数据。于是由Tim Berners Lee领导的小组开发出了1种主从、分布式的网络服务系统,这就是www.xiexiebang.compile编译或链接程序,可在服务器端直接执行,这无疑是更加方便了我们的编写过程。
2、使用编程环境方便简单。可以使用普通的记事本之类的文本编辑器,即可进行编辑设计,如:Windows的记事本、FrontPage等文本编辑器。也可以用dreamweaver和专业的Microsoft Visual InterDev开发工具。
3、浏览网页方便,交互速度也快。PHP是运行在服务器端,所以我们无须担心浏览器是否支持PHP所使用的编程语言,用户端只要使用可执行HTML码的浏览器,即可浏览Personal home pages所设计的网页内容。PHP在服务器端运行,当程序执行完毕后,服务器仅将执行的结果返回给客户浏览器,这样也就减轻了客户端浏览器的负担,大大提高了交互的速度。
4、提供多种编程语言。PHP能与任何ActiveX scripting语言相容。除了可用VBScript或JScript语言来设计外,还通过plug-in的方式,使用由第三方所提供的其他脚本语言,譬如Perl等。
5、提高代码的安全性。Personal home pages的程序代码隐藏,已编码的脚本在运行时由脚本引擎解码,因此不需要单独的应用程序。客户端上仅可以看到由PHP输出的动态HTML文件。因而可以避免所写的源程序被他人剽窃,也提高了程序的安全性。
6、功能强大。编程是面向对象的(Object oriented),并可扩展ActiveX Server组件功能。Personal home page Components(ActiveX服务器组件)具有无限可扩充性。你可以使用任何编程语言来编写你所需要的Personal Server 组件。可以使用Visual Basic、Java、Visual C++、COBOL等编程语言来编写你所需要的Personal Server Component。也可以使用第三方组件或自己开发的Personal Server组件。理论上说,可以实现任何功能。
7、访问数据库十分方便。可以通过PDO(Personal Data Objects,微软的一种新的数据访问模型,是一种可以提供WEB页面开发者轻松存取Internet的数据库,并可以在用户端实现网上立即、即时更新显示的最新WEB页面数据库技术。)非常方便地访问数据库。
总之,PHP从字面上说,包含三方面含义: 1.Personal:PHP使用了微软的Personal技术。Personal(COM)技术是现在Microsoft软件的重要基础。它采用封装对象,程序调用对象的技术,简化编程,加强程序间合作。PHP本身封装了一些基本组件和常用组件,有很多公司也开发了很多实用组件。只要你可以在服务器上安装这些组件,通过访问组件,你就可以快速、简易地建立自己的WEB应用。
2.home:PHP运行在服务器端。这样就不必担心浏览器是否支持PHP所使用的编程语言。PHP的编程语言可以是VBSCRIPT和JSCRIPT。VBSCRIPT是VB的一个简集,会VB的人可以很方便的快速上手。然而NETscape浏览器不支持客户端的VBSCRIPT,所以最好不要在客户端使用VBSCRIPT。而在服务器端,则无需考虑浏览器的支持问题。NETscape浏览器也可以正常显示PHP页面。
3.page:PHP返回标准的HTML页面,可以正常地在常用的浏览器中显示。浏览者查看页面源文件时,看到的是PHP生成的HTML代码,而不是PHP程序代码。这样就可以防止别人抄袭程序。由此可以看出,PHP是在IIS下开发WEB应用的一种简单、方便的编程工具。在了解了VBSCRIPT的基本语法后,只需要清楚各个组件的用途、属性、方法,就可以轻松编写出自己的PHP系统。
第5页
而我这次所开发的留言本系统,主要是利用PHP技术的简单和实用的特点,以及PHP使用的广泛性,而且非常适合于网络中小型系统开发。
五 MYSQL介绍
MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司。在2008 年1月16号被Sun公司收购。而2009年,SUN又被Oracle收购.对于Mysql的前途,没有任何人抱乐观的态度.目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
1.使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性 2.支持AIX、FreeBSD、HP-UX、Linux、Mac OS、Novell Netware、OpenBSD、OS/2 Wrap、Solaris、Windows等多种操作系统
3.为多种编程语言提供了API。这些编程语言包括C、C++、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等。
4.支持多线程,充分利用CPU资源
5.优化的SQL查询算法,有效地提高查询速度
6.既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的GB 2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名
7.提供TCP/IP、ODBC和JDBC等多种数据库连接途径 8.提供用于管理、检查、优化数据库操作的管理工具 9.可以处理拥有上千万条记录的大型数据库
六 留言板系统的概要设计
(一)系统开发环境
基于微软平台PHP环境,使用MYSQL数据库。适用于IE8.0以上版本浏览器,Win2000+APACHE 或win7+APACHE以上运行环境。(本人用的win7+APACHE测试)。
(二)php语言选择
选择一个好的编程语言十分的重要,当前,面对众多的编程语言,很多人无从选择,而本人看到PHP的以上众多特点,个人认为:
MYSQL后台数据库+PHP服务器端程序+客户端IE浏览器,是一个精练实用高效的组合模式。在这种使用模式中,PHP程序无疑是最重要的,是沟通客户端和后台数据库之间的桥梁。在PHP程序中,通过数据库语言,建立对MYSQL数据库的连接,是客户能够访问后
第6页
台数据库的前提。
鉴于前面介绍PHP优点的原因,又有上面组合的优势,本人的留言板使用PHP语言也是十分正确而实用的。
(三)系统功能
该留言板具有的主要功能如下:
1.可以按照发言时间的先后顺序,留言板自动排序; 2.留言板的主要栏目组成图
3.本留言板不需注册,陌生人即可留言。
4.因为是个人留言板所以具有留言、查看、删除的功能。
七 留言板详细设计
有了技术和流程图以及留言板要实现的功能,接下来就应该进行详细设计了。数据库是首当其冲的,接下来就是用户常接触的首页的设计,然后就是该留言板特色功能的设计和实现。
第7页
(一)数据库设计
我的数据库采用的是MY SQL数据库,采用的原因也已经介绍了。以下就介绍留言板数据库的组成。
第8页
(二)留言板数据库连接 写入和保存
数据库链接失败!
”;
exit();} mysql_select_db(“gbook”, $con);mysql_query(“set names 'gb2312'”);date_default_timezone_set(PRC);?>
第9页
if(isset($_REQUEST['GLOBALS'])OR isset($_FILES['GLOBALS'])){ exit('Request tainting attempted.');} //Session保存路径
$sessSavePath = LOVE_ROOT.“data/sessions/”;if(is_writeable($sessSavePath)&& is_readable($sessSavePath)){ session_save_path($sessSavePath);} date_default_timezone_set(Singapore);$timestamp = time();require_once LOVE_ROOT.'./data/config.inc.php';require_once LOVE_ROOT.'./data/db.inc.php';require_once LOVE_ROOT.'./include/db_mysql.class.php';require_once LOVE_ROOT.'./include/template.class.php';if(defined('UC_KG')){include_once TM_ROOT.'/uc_client/client.php';} $PHP_SELF = $_SERVER['PHP_SELF'] ? $_SERVER['PHP_SELF'] : $_SERVER['SCRIPT_NAME'];$SCRIPT_FILENAME = str_replace('', '/',($_SERVER['PATH_TRANSLATED'] ? $_SERVER['PATH_TRANSLATED'] : $_SERVER['SCRIPT_FILENAME']));//$homeurl = 'http://'.$_SERVER['HTTP_HOST'].preg_replace(“//+(api|archiver|wap)?/*$/i”, '', substr($PHP_SELF, 0, strrpos($PHP_SELF, '/'))).'/';
//实例化数据库操作 $db = new dbstuff;$db->connect($dbhost, $dbuser, $dbpw, $dbname, $pconnect);unset($dbhost, $dbuser, $dbpw, $dbname, $pconnect);$db->query(“set names gbk”);if(getenv('HTTP_CLIENT_IP')&& strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown')){ $onlineip = getenv('HTTP_CLIENT_IP');} elseif(getenv('HTTP_X_FORWARDED_FOR')&& strcasecmp(getenv('HTTP_X_FORWARDED_FOR'), 'unknown')){ $onlineip = getenv('HTTP_X_FORWARDED_FOR');} elseif(getenv('REMOTE_ADDR')&& strcasecmp(getenv('REMOTE_ADDR'), 'unknown')){ $onlineip = getenv('REMOTE_ADDR');} elseif(isset($_SERVER['REMOTE_ADDR'])&& $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], 'unknown')){ $onlineip = $_SERVER['REMOTE_ADDR'];}
preg_match(“/[d.]{7,15}/”, $onlineip, $onlineipmatches);$onlineip = $onlineipmatches[0] ? $onlineipmatches[0] : 'unknown';unset($onlineipmatches);?>
第10页
var $querynum = 0;var $link;var $histories;
var $dbhost;var $dbuser;var $dbpw;var $dbcharset;var $pconnect;var $tablepre;var $time;
var $goneaway = 5;
function connect($dbhost, $dbuser, $dbpw, $dbname = '', $dbcharset = '', $pconnect = 0, $tablepre='', $time = 0){
$this->dbhost = $dbhost;
$this->dbuser = $dbuser;
$this->dbpw = $dbpw;
$this->dbname = $dbname;
$this->dbcharset = $dbcharset;
$this->pconnect = $pconnect;
$this->tablepre = $tablepre;
$this->time = $time;
if($pconnect){
if(!$this->link = mysql_pconnect($dbhost, $dbuser, $dbpw)){
$this->halt('Can not connect to MySQL server');
}
} else {
if(!$this->link = mysql_connect($dbhost, $dbuser, $dbpw)){
$this->halt('Can not connect to MySQL server');
}
}
if($this->version()> '4.1'){
if($dbcharset){
mysql_query(“SET character_set_connection=”.$dbcharset.“, character_set_results=”.$dbcharset.“, character_set_client=binary”, $this->link);
}
if($this->version()> '5.0.1'){
mysql_query(“SET sql_mode=''”, $this->link);
}
第11页
} } if($dbname){ mysql_select_db($dbname, $this->link);} function fetch_array($query, $result_type = MYSQL_ASSOC){
return mysql_fetch_array($query, $result_type);}
function result_first($sql){
$query = $this->query($sql);
return $this->result($query, 0);}
function fetch_first($sql){
$query = $this->query($sql);
return $this->fetch_array($query);} function fetch_row($query){
$query = mysql_fetch_row($query);
return $query;} function fetch_fields($query){
return mysql_fetch_field($query);} function fetch_rows($sql){
$result = $this->query($sql);
$arr = array();
while($row = $this->fetch_array($result))
{
$arr[] = $row;
}
$this->free_result($result);
return $arr;} function fetch_one($sql){
$rs = $this->query($sql);
$arr = $this->fetch_array($rs,MYSQL_NUM);$this->free_result($rs);
第12页
return $arr[0];} function fetch_all($sql, $id = ''){
$arr = array();
$query = $this->query($sql);
while($data = $this->fetch_array($query)){
$id ? $arr[$data[$id]] = $data : $arr[] = $data;
}
return $arr;}
function cache_gc(){
$this->query(“DELETE FROM {$this->tablepre}sqlcaches WHERE expiry<$this->time”);}
function query($sql, $type = '', $cachetime = FALSE){
$func = $type == 'UNBUFFERED' && @function_exists('mysql_unbuffered_query')'mysql_unbuffered_query' : 'mysql_query';
if(!($query = $func($sql, $this->link))&& $type!= 'SILENT'){
$this->halt('MySQL Query Error', $sql);
}
$this->querynum++;
$this->histories[] = $sql;
return $query;}
function affected_rows(){
return mysql_affected_rows($this->link);}
function error(){
return(($this->link)? mysql_error($this->link): mysql_error());}
function errno(){
return intval(($this->link)? mysql_errno($this->link): mysql_errno());}
function result($query, $row){
$query = @mysql_result($query, $row);
return $query;}
function num_rows($query){
第13页
?
$query = mysql_num_rows($query);
return $query;}
function num_fields($query){
return mysql_num_fields($query);}
function free_result($query){
return mysql_free_result($query);}
function insert_id(){
return($id = mysql_insert_id($this->link))>= 0 ? $id : $this->result($this->query(“SELECT last_insert_id()”), 0);}
function version(){
return mysql_get_server_info($this->link);}
function close(){
return mysql_close($this->link);}
function halt($message = '', $sql = ''){
$error = mysql_error();
$errorno = mysql_errno();
if($errorno == 2006 && $this->goneaway--> 0){
$this->connect($this->dbhost, $this->dbuser, $this->dbpw, $this->dbname, $this->dbcharset, $this->pconnect, $this->tablepre, $this->time);
$this->query($sql);
} else {
$s = 'Error:'.$error.'
';
$s.= 'Errno:'.$errorno.'
';
$s.= 'SQL::'.$sql;
exit($s);
} } } ?>
第14页
(三)留言板文件夹中文件的介绍
有了数据库,就应该设计留言板的各个页面。本留言板由2个文件夹,11个文件组成,简单介绍各文件的作用:
index.PHP:留言板主页,主要功能是查看留言,任何人都可以查看留言信息。Fun.php连接数据库并统计留言条数、计算页数 Config.php连接配置数据库。
(四)留言板首页设计
我留言板的首页文件index.PHP,功能主要是为访客留下相关的信息,并进行留言。界面相对简单,但功能很实用!留言板的基本功能实现具体如下:
图7.1留言首页
图7.2愿望
图7.3愿望列表
结束语:通过上面的介绍,相信对该留言板整体的构建和各项功能都有了一定的认识,最重要的是学会了留言板的设计以及类似网络的编程,更对实际操作和具体设计流程有了清晰的认识。该留言板实现了基本功能,并具有自己的特色,例如屏蔽关键字和防灌水功能。由于该留言板功能实用,而且界面友好,特别适合于中小型网站使用。对于刚刚接触网络编程人员的信心和兴趣也会有很大提高。
八 总结
通过本次毕业设计,我学到了很多东西,例如:编程规范,PHP技术等。这次毕业设计是对我大学本科四年所学知识的一次综合应用,让我认识到了自己的不足,并不断的加强改进。在系统不断的完善改进中,我学到了很多新的知识,也懂得了很多。这使我对自己的未来充满了信心。
九 留言板特色和不足
特色:任何人都可以留言,任何人都可以看到。无需注册和登录,完全开放。不足:管理员功能较弱。
第15页
参考文献:
1.《PHP语言,进阶和高级应用》 龙浩等编著 清华大学出版社
2.《PHP & MYSQL Web数据库应用开发指南》 Hugh E.Williams等著 谢君英 欧阳宇译2003年5月
3.《php程序设计》 Programming PHP 中国电力出版社 2003年7月 4.《phpmysql数据库开发指南》焦桐顺著 电子工业出版社 2001年9月 5.《php4交互网页数据库实战手册》清华大学出版社 2004年7月
第16页
第五篇:ASPNET留言板
一、留言板的简介(一)留言板
留言板是一种电子便签管理系统,是用 ASP 或其它脚本语言编写的网络应用程序。在网络用户交流中起很大的作用, 每个人都可以将他的资料和要求等信息保留在页面上,以供他人观看。留言板供其他网友给自己留言,或者临时存放自己的感受。留言操作相对简单, 在您进入网站后, 进入任何一个留言板货社区均可以看到有输入框,输入后提交即可。留言板提供完备的信息发布功能,在网络用户交流中也有很大的作用。而这个留言板仅仅是简单的留言和管理员对留言板进行设置和进行回复、删除管理的工具。该留言板简单但实用, 而且具备了大多数留言板的基本功能。
二、需求分析(一)需求分析
要求系统具有良好的人机界面, 能够满足用户的留言要求, 能够让访客在查看留言内容后,对留言的内容发表自己的意见,管理员能够实现对留言的回复及删除操作, 网站最大限度地实现维护和易操作性,网站运行稳定、安全可靠。(二)设计目标
界面设计美观友好,使用灵活便捷,数据存储安全可靠,提供留言查看、留言发表、留言回复、留言删除功能,系统最大限度地实现易维护和易操作性。(三)功能分析
可以按照发言时间的先后顺序,留言板自动排序,友好简洁的管理界面,便于管理员维护留言板,管理员具有回复和删除留言的权限,具有页数跳转功能系统功能模块图,三、系统功能设计
在编写留言系统前,首先需要确定留言系统所需要的一些功能模块和适用场景,例如留言系统是以何种形式呈现给用户, 如何对这些留言进行管理等等,这些功能都是需要在开发初级进行设计和规划的。后台主页,后台主页面, 后台管理,后台留言信息管理,后台会员。前台主页,留言系统网站登陆界面,主页,留言动态。登陆界面主要有,注册、登陆、看帖、发帖。(一)主要功能 ,、留言网站用户登陆界面功能
当用户访问 W eb 页面时需要进行登录进入留言板网站界面,用户不进行登录就不能够进入系统,也不能够分享相应的信息。管理员可以配置是否需要进行登录才能查看留言板网站的内容, 如果管理员设置需要登录查看,则用户不登陆就不能够查看相应的内容。
2、用户主页功能
用户登录之后就可以看到留言板系统的内容。
3、用户注册功能
访客需要注册账户后才能够看帖,发帖。
4、用户看帖功能
用户登录留言板网站后,就可以查看到网站内的留言贴。
5、用户发帖功能
用户登录留言板网站后,就可以根据其它留言贴而发帖。
6、管理员登录功能
为了方便管理留言板系统,管理员进行对留言板管理。
7、回复功能
用户对留言进行回复(二)数据库设计 ASP.NET 留言板系统在数据库上并不是很困难, 但是也不会简单,其中包含了很多的功能, 这些功能能够让用户在网站上分享自己的见解、意见、聊天等,所以在数据库的设计上, 其表的数量和表与表之间的关系也原有的模块或系统更加复杂。
1、数据表的创建
创建表可以通过 SQL Server 进行创建
2、事务表 Admin Member Info
3、公告数据
公告数据可以不使用数据库进行存储,在这里可以使用 txt 文档进行数据存储, 这样不仅可以减轻数据库服务器的压力, 也能够增加公告中文本的可扩展性。注意,对于公告的数据直接存储在 txt 文档中,当首页需要调用公告时,可以直接从 txt 文档中读取数据进行 HTML 呈现。
(四)设计技术
1、ASP Microsoft Active Server Pages 即我们所称的 ASP,其实是一套微软开发的服务器端脚本环境。Active Server Page 是创建动态网页的一个很好的工具, 它起一种编程语言的作用,可以利用它编写动态产生 HTML 的程序代码。而且 ASP 也是服务器端脚本环境,可以用来创建交互式 WEB 页并建立强大的的 Web 应用程序。因此,只要用户浏览 Web 站点并请求一个 ASP 页,Web 服务器就可以处理相应的 ASP 代码,生成 HTML 代码,然后将它传递到用户浏览器并显示出网页。ASP 内含于 IIS4.0 和 5.0 之中,通过 ASP 我们可以结合 HTML 网页、ASP 指令和 ActiveX 元件建立动态、交互且高效的 WEB服务器应用程序。有了 ASP 就不必担心客户的浏览器是否能运行所编写的代码, 因为所有的程序都将在服务器端执行, 包括所有嵌在普通HTML 中的脚本程序。当程序执行完毕后,服务器仅将执行的结果返回给客户浏览器, 这样也就减轻了客户端浏览器的负担, 大大提高了交互的速度。
2、SQL SQL 全称是“结构化查询语言(Structured Query Language)” ,最早的是 IBM 的圣约瑟研究实验室为其关系数据库管理系统 SYSTEM R开发的一种查询语言,它的前身是 SQUARE 语言。SQL 语言结构简洁,功能强大,简单易学,所以自从 IBM 公司 1981 年推出以来,SQL 语言,得到了广泛的应用。如今无论是像 Oracle ,Sybase, SQL Server这些大型的数据库管理系统,还是像 Visual Foxporo, PowerBuilder这些微机上常用的数据库开发系统,都支持 SQL 语言作为查询语言。
3、IIS IIS 是 Internet Information Server 的缩写,它是微软公司主推的服务器,最新的版本是 Windows2003 里面包含的 IIS 6,IIS 与WindowNT Server 完全集成在一起,因而用户能够利用 Windows NTServer 和 NTFS,NT File SystemNT 的文件系统,内置的安全特性,建立强大,灵活而安全的 Internet 和 Intranet 站点。IIS 支持 HTTP,Hypertext Transfer Protocol,超文本传输协议, ,FTP,Fele Transfer Protocol,文件传输协议,以及 SMTP 协议,通过使用 CGI 和 ISAPI,IIS 可以得到高度的扩展。
四、系统界面和代码实现
1、用户登录界面, 代码如下, u s i n g
S y s t e m.D a t a.S q l C l i e n t;p u b l i c
p a r t i a l
c l a s s
L o g i n
:
S y s t e m.W e b.U I.P a g e { p r o t e c t e d
v o i d
P a g e _ L o a d(o b j e c t
s e n d e r ,E v e n t A r g s
e)
{
} p r o t e c t e d
v o i d
B t n L o g i n _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
i f
(T x t N a m e.T e x t
= =
“ ”
|
T x t P a s s.T e x t
= =
“ ”)
{ L a b e l 1.T e x t
=
“ 必须输入帐号和密码,”;r e t u r n;
} e l s e
{ S q l C o n n e c t i o n
c o n n
=
n e w
S q l C o n n e c t i o n(“ D a t a
S o u r c e =.;I n i t i a l C a t a l o g = B B S;I n t e g r a t e d
S e c u r i t y = t r u e ”);c o n n.O p e n();S q l C o m m a n d
C m d
=
n e w
S q l C o m m a n d();
C m d.C o n n e c t i o n
=
c o n n;C m d.C o m m a n d T e x t
=
“ s e l e c t
[ 用户名]
f r o m
[ m e m b e r ]
w h e r e
[ 用户名] = ' ”
+
T x t N a m e.T e x t +
“ '
a n d
[ 密码] = ' ”
+
T x t P a s s.T e x t
+
“ ' ”;S q l D a t a R e a d e r
d r
=
C m d.E x e c u t e R e a d e r();i f
(d r.R e a d()){ S e s s i o n [ “ m e m ” ]
=
T x t N a m e.T e x t;
/ / 登录成功后记下该用户昵称,以便后续功能使用
L a b e l 1.T e x t
=
“ 登录成功,”;T x t N a m e.T e x t
=
“ ”;T x t N a m e.E n a b l e d
=
f a l s e;T x t P a s s.T e x t
=
“ ”;T x t P a s s.E n a b l e d
=
f a l s e;d r.C l o s e();
} e l s e {
L a b e l 1.T e x t
=
“ 昵称不存在或密码不对,”;
} c o n n.C l o s e();
}
} p r o t e c t e d
v o i d
L i n k B u t t o n 1 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.R e d i r e c t(“ g u a n l i.a s p x ”);
} }
2、用户注册界面, 代码如下,u s i n g
S y s t e m.D a t a.S q l C l i e n t;p u b l i c
p a r t i a l
c l a s s
_ D e f a u l t
:
S y s t e m.W e b.U I.P a g e
{
p r o t e c t e d
v o i d
P a g e _ L o a d(o b j e c t
s e n d e r ,E v e n t A r g s
e)
{
} p u b l i c
b o o l
C h e c k I n p u t(){
i f
(T x t N a m e.T e x t
= =
“ ”
|
T x t P a s s.T e x t
= =
“ ”
| T x t P a s s C o n f.T e x t
= =
“ ”
|
T x t E m a i l.T e x t
= =
“ ”){ L a b e l 1.T e x t
=
“ 你输入的信息不正确,请重新输入,”;T x t N a m e.T e x t
=
“ ”;T x t P a s s.T e x t
=
“ ”;T x t P a s s C o n f.T e x t
=
“ ”;T x t E m a i l.T e x t
=
“ ”;r e t u r n
f a l s e;
} e l s e {
i f
(T x t P a s s.T e x t
!=
T x t P a s s C o n f.T e x t){
L a b e l 1.T e x t
=
“ 你两次输入的密码不同,请重新输入,”;T x t N a m e.T e x t
=
“ ”;T x t P a s s.T e x t
=
“ ”;T x t P a s s C o n f.T e x t
=
“ ”;T x t E m a i l.T e x t
=
“ ”;r e t u r n
f a l s e;
}
} r e t u r n
t r u e;
} p r o t e c t e d
v o i d
B t n R e g _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){ i f
(C h e c k I n p u t()){ S q l C o n n e c t i o n
c o n n
=
n e w
S q l C o n n e c t i o n(“ D a t a
S o u r c e =.;I n i t i a l
C a t a l o g = B B S;I n t e g r a t e d S e c u r i t y = t r u e ”);c o n n.O p e n();/ / 检查用户是否已存在
S q l C o m m a n d
C m d
=
n e w
S q l C o m m a n d();C m d.C o n n e c t i o n
=
c o n n;C m d.C o m m a n d T e x t
=
“ s e l e c t
[ 用户名]
f r o m
m e m b e r ”;S q l D a t a R e a d e r
d r
=
C m d.E x e c u t e R e a d e r();w h i l e
(d r.R e a d()){ i f
(d r.G e t S t r i n g(0)
= =
T x t N a m e.T e x t){
L a b e l 1.T e x t
=
T x t N a m e.T e x t
+
“ 已经存在,请你选择另外的昵称,”;c o n n.C l o s e();r e t u r n;
}
} c o n n.C l o s e();s t r i n g
S q l S t r;S q l S t r
=
“ I n s e r t
i n t o
m e m b e r([ 用户名] , [ 密码] , [ 电子邮件])
v a l u e s(' ”
+
T x t N a m e.T e x t +
“ ' , ' ”
+
T x t P a s s.T e x t
+
“ ' , ' ”
+
T x t E m a i l.T e x t
+
“ ')”;C m d.C o m m a n d T e x t
=
S q l S t r;c o n n.O p e n();C m d.E x e c u t e N o n Q u e r y();c o n n.C l o s e();L a b e l 1.T e x t
=
“ 恭喜你,你已注册成功,”;}
}
p r o t e c t e d
v o i d
B t n C a n c e l _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.W r i t e(“ < s c r i p t
l a n g u a g e = j a v a s c r i p t > a l e r t(' 用户已取消注册,');< / s c r i p t > ”);
} p r o t e c t e d
v o i d
L i n k B u t t o n 1 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.R e d i r e c t(“ g u a n l i.a s p x ”);
} } 3、看帖界面, 代码如下, u s i n g
S y s t e m.D a t a.S q l C l i e n t;p u b l i c
p a r t i a l
c l a s s
S h o w
:
S y s t e m.W e b.U I.P a g e {
p r o t e c t e d
v o i d
P a g e _ L o a d(o b j e c t
s e n d e r ,E v e n t A r g s
e){ S q l C o n n e c t i o n
c o n n
=
n e w
S q l C o n n e c t i o n(“ D a t a
S o u r c e =.;I n i t i a l
C a t a l o g = B B S;I n t e g r a t e d S e c u r i t y = t r u e ”);S q l D a t a A d a p t e r
a d a p t e r
=
n e w
S q l D a t a A d a p t e r(“ s e l e c t
*
f r o m
[ I n f o ] ” ,c o n n);D a t a S e t
d s
=
n e w
D a t a S e t();a d a p t e r.F i l l(d s ,“ I n f o T a b l e ”);G r i d V i e w 1.D a t a S o u r c e
=
d s.T a b l e s [ 0 ].D e f a u l t V i e w;G r i d V i e w 1.D a t a B i n d();} p r o t e c t e d
v o i d
G r i d V i e w 1 _ P a g e I n d e x C h a n g i n g(o b j e c t
s e n d e r ,G r i d V i e w P a g e E v e n t A r g s
e){
G r i d V i e w 1.P a g e I n d e x
=
e.N e w P a g e I n d e x;G r i d V i e w 1.D a t a B i n d();} p r o t e c t e d
v o i d
B u t t o n 1 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){ R e s p o n s e.R e d i r e c t
(“ L o g i n.a s p x ”);} p r o t e c t e d
v o i d
L i n k B u t t o n 1 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.R e d i r e c t(“ g u a n l i.a s p x ”);} }
4、发帖界面, 代码如下, u s i n g
S y s t e m.D a t a.S q l C l i e n t;p u b l i c
p a r t i a l
c l a s s
S e n d
:
S y s t e m.W e b.U I.P a g e {
p r o t e c t e d
v o i d
P a g e _ L o a d(o b j e c t
s e n d e r ,E v e n t A r g s
e){
} p r o t e c t e d
v o i d
B t n S e n d _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
L b l C a u t i o n.T e x t
=
“ 你必须输入主题和内容,”;R e t u r n;
} S q l C o n n e c t i o n
c o n n
=
n e w
S q l C o n n e c t i o n(“ D a t a
S o u r c e =.;I n i t i a l
C a t a l o g = B B S;I n t e g r a t e d S e c u r i t y = t r u e ”);s t r i n g
S q l S t r;S q l S t r
=
“ I n s e r t
i n t o
i n f o(主题, 张贴者昵称, 内容, 张贴时间, 回复编号)
”;S q l S t r
=
S q l S t r
+
“
v a l u e s(' ”
+
T x t S u b j e c t.T e x t
+
“ ' , ' ”
+
S e s s i o n [ “ m e m ” ]
+
“ ' , ' ”
+ T x t C o n t e n t.T e x t;S q l S t r
=
S q l S t r
+
“ ' , ' ”
+
D a t e T i m e.N o w
+
“ ' , ' 0 ')”;S q l C o m m a n d
C m d
=
n e w
S q l C o m m a n d(S q l S t r ,c o n n);c o n n.O p e n();C m d.E x e c u t e N o n Q u e r y();c o n n.C l o s e();L b l C a u t i o n.T e x t
=
“ 已成功发帖,”;T x t S u b j e c t.T e x t
=
“ ”;T x t C o n t e n t.T e x t
=
“ ”;
} p r o t e c t e d
v o i d
M e n u 1 _ L o a d(o b j e c t
s e n d e r ,E v e n t A r g s
e)
{
} p r o t e c t e d
v o i d
L i n k B u t t o n 1 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.R e d i r e c t(“ g u a n l i.a s p x ”);
} } 5、管理员登录界面, 代码如下, u s i n g
S y s t e m.D a t a.S q l C l i e n t;p u b l i c
p a r t i a l
c l a s s
g u a n l i
:
S y s t e m.W e b.U I.P a g e {
p r o t e c t e d
v o i d
P a g e _ L o a d(o b j e c t
s e n d e r ,E v e n t A r g s
e){
} p r o t e c t e d
v o i d
B u t t o n 1 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
i f
(T e x t B o x 1.T e x t
= =
“ ”
|
T e x t B o x 2.T e x t
= =
“ ”){
L a b e l 1.T e x t
=
“ 必须输入帐号和密码,”;r e t u r n;
} e l s e { S q l C o n n e c t i o n
c o n n
=
n e w
S q l C o n n e c t i o n(“ D a t a
S o u r c e =.;I n i t i a l C a t a l o g = B B S;I n t e g r a t e d
S e c u r i t y = t r u e ”);c o n n.O p e n();
S q l C o m m a n d
C m d
=
n e w
S q l C o m m a n d();C m d.C o n n e c t i o n
=
c o n n;C m d.C o m m a n d T e x t
=
“ s e l e c t
[ 用户名]
f r o m
[ a d m i n ]
w h e r e
[ 用户名] = ' ”
+
T e x t B o x 1.T e x t +
“ '
a n d
[ 密码] = ' ”
+
T e x t B o x 2.T e x t
+
“ ' ”;S q l D a t a R e a d e r
d r
=
C m d.E x e c u t e R e a d e r();i f
(d r.R e a d()){
S e s s i o n [ “ m e m ” ]
=
T e x t B o x 1.T e x t;
/ / 登录成功后记下该用户昵称,以便后续功能使用
L a b e l 1.T e x t
=
“ 登录成功,”;T e x t B o x 1.T e x t
=
“ ”;T e x t B o x 1.E n a b l e d
=
f a l s e;T e x t B o x 2.T e x t
=
“ ”;T e x t B o x 2.E n a b l e d
=
f a l s e;d r.C l o s e();R e s p o n s e.R e d i r e c t(“ S h o w A r t i c l e.a s p x ”);}
e l s e {
L a b e l 1.T e x t
=
“ 昵称不存在或密码不对,”;
} c o n n.C l o s e();
}
} p r o t e c t e d
v o i d
B u t t o n 2 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.W r i t e(“ < s c r i p t
l a n g u a g e = j a v a s c r i p t > a l e r t(' 用户已取消注册,');< / s c r i p t > ”);
} p r o t e c t e d
v o i d
L i n k B u t t o n 1 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.R e d i r e c t(“ g u a n l i.a s p x ”);} p r o t e c t e d
v o i d
B u t t o n 3 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.R e d i r e c t(“ L o g i n.a s p x ”);} }
6、显示发帖信息界面, 代码如下,u s i n g
S y s t e m.D a t a.S q l C l i e n t;p u b l i c
p a r t i a l
c l a s s
S h o w A l l
:
S y s t e m.W e b.U I.P a g e {
p r o t e c t e d
v o i d
P a g e _ L o a d(o b j e c t
s e n d e r ,E v e n t A r g s
e){ S q l C o n n e c t i o n
c o n n
=
n e w
S q l C o n n e c t i o n(“ D a t a
S o u r c e =.;I n i t i a l
C a t a l o g = B B S;I n t e g r a t e d S e c u r i t y = t r u e ”);S q l C o m m a n d
C m d
=
n e w
S q l C o m m a n d(“ s e l e c t
*
f r o m
[ I n f o ]
w h e r e
I D = ”
+ R e q u e s t.Q u e r y S t r i n g [ “ i d ” ] ,c o n n);c o n n.O p e n();S q l D a t a R e a d e r
o b j = C m d.E x e c u t e R e a d e r();w h i l e
(o b j.R e a d()){
L b l N a m e.T e x t
=
o b j.G e t V a l u e(2).T o S t r i n g();L b l D a t e.T e x t
=
o b j.G e t V a l u e(4).T o S t r i n g();T x t S u b j e c t.T e x t
=
o b j.G e t V a l u e(1).T o S t r i n g();T x t C o n t e n t.T e x t
=
o b j.G e t V a l u e(3).T o S t r i n g();
} o b j.C l o s e();c o n n.C l o s e();s t r i n g
s q l
=
“ S e l e c t
*
F r o m
[ i n f o ]
w h e r e
回复编号= ' ”
+
R e q u e s t.Q u e r y S t r i n g [ “ i d ” ]
+
“ ' ”;S q l D a t a A d a p t e r
a d a p t e r
=
n e w
S q l D a t a A d a p t e r(s q l ,c o n n);D a t a S e t
d s
=
n e w
D a t a S e t();a d a p t e r.F i l l(d s ,“ R e p l y ”);D a t a L i s t 1.D a t a S o u r c e
=
d s.T a b l e s [ 0 ].D e f a u l t V i e w;D a t a L i s t 1.D a t a B i n d();
} p r o t e c t e d
v o i d
L i n k B u t t o n 1 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.R e d i r e c t(“ g u a n l i.a s p x ”);} }
7、回复界面, 代码如下, u s i n g
S y s t e m.D a t a.S q l C l i e n t;p u b l i c
p a r t i a l
c l a s s
S h o w A r t i c l e
:
S y s t e m.W e b.U I.P a g e {
p r o t e c t e d
v o i d
P a g e _ L o a d(o b j e c t
s e n d e r ,E v e n t A r g s
e){
s t r i n g
s t r
=
“ 1 2 3 4 ”;S q l C o n n e c t i o n
c o n n
=
n e w
S q l C o n n e c t i o n(“ D a t a
S o u r c e =.;I n i t i a l
C a t a l o g = B B S;I n t e g r a t e d S e c u r i t y = t r u e ”);S q l C o m m a n d
C m d
=
n e w
S q l C o m m a n d(“ s e l e c t
*
f r o m
[ i n f o ]
w h e r e
[ 主题] = ”
+
s t r ,c o n n);c o n n.O p e n();S q l D a t a R e a d e r
o b j
=
C m d.E x e c u t e R e a d e r();w h i l e
(o b j.R e a d()){
L b l N a m e.T e x t
=
o b j.G e t V a l u e(2).T o S t r i n g();L b l D a t e.T e x t
=
o b j.G e t V a l u e(4).T o S t r i n g();T x t S u b j e c t.T e x t
=
o b j.G e t V a l u e(1).T o S t r i n g();T x t C o n t e n t.T e x t
=
o b j.G e t V a l u e(3).T o S t r i n g();}
c o n n.C l o s e();} p r o t e c t e d
v o i d
B t n R e p l y _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
i f
(T x t R e.T e x t
= =
“ ”){
L b l C a u t i o n.T e x t
=
“ 请输入回帖内容,”;
} e l s e {
s t r i n g
S q l S t r;S q l S t r
=
“ I n s e r t
i n t o
i n f o([ 主题] , [ 张贴者昵称] , [ 内容] , [ 张贴时间] , [ 回复编号])
”;S q l S t r
=
S q l S t r
+
“
v a l u e s(' R e : ”
+
T x t S u b j e c t.T e x t +
“ ' , ' ”
+
S e s s i o n [ “ m e m ” ]
+ “ ' , ' ”
+
T x t R e.T e x t;S q l S t r
=
S q l S t r
+
“ ' , ' ”
+
D a t e T i m e.N o w
+
“ ' , ' ”
+
R e q u e s t.Q u e r y S t r i n g [ “ I D ” ]
+
“ ')”;S q l C o n n e c t i o n
c o n n
=
n e w
S q l C o n n e c t i o n(“ D a t a
S o u r c e =.;I n i t i a l C a t a l o g = B B S;I n t e g r a t e d
S e c u r i t y = t r u e ”);S q l C o m m a n d
C m d
=
n e w
S q l C o m m a n d(S q l S t r ,c o n n);c o n n.O p e n();C m d.E x e c u t e N o n Q u e r y();c o n n.C l o s e();L b l C a u t i o n.T e x t
=
“ 已成功回帖,”;} } p r o t e c t e d
v o i d
B t n A l l R e _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.R e d i r e c t(“ S h o w A l l.a s p x ? i d = ”
+
R e q u e s t.Q u e r y S t r i n g [ “ i d ” ]);} p r o t e c t e d
v o i d
B u t t o n 1 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.R e d i r e c t(“ L o g i n.a s p x ”);
} p r o t e c t e d
v o i d
L i n k B u t t o n 1 _ C l i c k(o b j e c t
s e n d e r ,E v e n t A r g s
e){
R e s p o n s e.R e d i r e c t(“ g u a n l i.a s p x ”);
} }
8、Menu 控件,五、总结
上述就是我们组留言板管理系统的全部设计和开发过程。通过这次实训设计, 使我们感到高科技、新知识的力量, 让我们知道我们还有很多知识需要学习,这是我们第一次运用 ASP.NET 做的完整的设计程序, 加之水平有限, 设计中难免有不当之处, 还请老师给予批评、指正。