第一篇:毕业设计(论文)工作计划和实施方案
2012届毕业设计(论文)工作计划和实施方案 毕业设计(论文)是学生在完成了全部课程学习之后,结合毕业实习或生产实际进行的一项综合性实践教学活动。该教学活动是实现培养目标的重要教学环节,也是培养创新精神的重要手段。为了加强对这一教学环节的管理,提高2012届毕业生毕业设计(论文)的质量,特做如下安排:
1.2011年9月25日~10月8日:论文选题。毕业论文选题是提高论文质量的关键环节。学生可根据个人兴趣和研究能力自拟题目,在拟定过程中应充分听取指导教师的意见,选题的一般原则:要选择有科学价值、有现实意义的论题;要选择自己感兴趣,有利于展开研究,自己可以驾驭完成的论题;尽可能做到一人一题。选定题目以后,请各位同学于10月8号之前,将各自的论文题目发到我的QQ邮箱。
2.2011年10月8日~11月8日:完成论文初稿。在教师指导下,学生开展相关调研工作,查阅文献、收集资料,针对所要解决的问题,提出设计方案,对方案进行测试,获取实验结果,并对实验结果进行分析和总结,据此撰写论文提纲和初稿,11月8日前完成毕业论文的初稿。
3.2011年11月9日~11月15日:论文中期检查。指导老师审阅学生论文初稿,提出修改、完善论文的意见。检查论文内容是否存在错误,是否存在抄袭、请他人代完成等情况,以及论文的排版格式是否正确。
4.2011年12月1日前:完成论文的第二稿。在教师指导下,对论文进行最后一次修改。要求论文字数不少于6000字。
5.2011年12月15日前:论文定稿。指导教师最后一次审核学生的论文。
6.2011年12月16日~12月18日:提交论文。按规定的论文格式规范,打印装订论文,并将论文装进档案袋,上交给指导老师。
7.2011年12月20日:论文答辩。答辩时,先由学生简单介绍论文的选题依据、研究内容和研究成果等,答辩老师再据此提出问题,学生就问题进行说明或答辩,最后,答辩组老师根据论文质量、指导教师的评语和学生回答问题的质量,给出学生毕业论文的最终成绩。
此外,再次提醒同学们注意以下几点:
a)尽量多搜集文献资料,并深入阅读这些技术资料,提高对所写论题的深
度和广度;
b)论文中一定要有自己的思考、自己的观点,不得将他人文章简单拼凑; c)涉及硬件系统或软件系统设计的论文,可用附录的形式提供系统电路原
理图、元器件清单和计算机程序的源代码,并且论文要有实验结果及其分析;
d)在借鉴或引用他人的技术成果时,一定要注明所引资料之来源,要求参
考文献不少于15篇;
e)文章撰写要符合规范要求,包括字体、行距、图片和表格等要符合规范
要求。
最后,由于时间比较紧,毕业设计任务重,所以请各位同学按时、保质保量完成各项任务,只要我们师生共同努力,一定能够顺利完成论文的写作,并努力使之成为“精品”。
机电系综合教研室 刘润丹
二〇一一年九月二十四日
第二篇:毕业实习、毕业设计(论文)工作计划
我的计划主要可以分为三个阶段:
第一阶段:
1月15日至2月28日:
初步制定了实习计划,填好了学生到校外单位进行实习和论文工作的申请审批表,安全责任书和告家长书,并拿给指导老师签了字。
同时,在指导老师的帮助下完成毕业论文开题报告及论文任务书,并与指导老师就题目及大纲进行讨论,主要讨论论文中的创新点及重难点。最终将论文题目题目暂定为从“麻将战争”看中日文化遗产保护意识。
第二阶段:
3月1日至3月15日:
前往南宁,参加南宁海关的面试,并在面试合格后经行了海关组织的体检和体检复查。
3月16日正式返校,完成毕业论文的资料搜集,并开始着手撰写论文初稿。3月22日,正式到达实习单位,开始在单位各部门参观学习,进行初步的了解,同时开始撰写实习日志。经过了一个星期的调试与适应,从3月29日开始着手撰写读书笔记及阶段总结。
第三阶段:
5月1日至5月30日
实习结束,将准备好实习单位鉴定表,给单位填写盖章,回到学校后交给指
导老师。然后完成实习总结和读书笔记,并继续同指导老师商讨论文,继续修改毕业论文,直到定稿。
准备好所有的毕业有关的资料,交给指导老师。做好PowerPoint,为毕业论文答辩积极准备。
第三篇:2013届毕业生毕业设计(论文)工作计划
江西科技师范大学通信与电子学院
2013届毕业生毕业设计(论文)工作计划
一、2012年6月29日成立学术工作委员会和毕业设计工作小组及答辩委员会。
二、2012年7月3日召开全院教师大会,由毕业设计工作小组组长指导教师怎样
确定选题,怎样进行调研。职称为讲师或以上(含研究生学历的助教),每人确定6—8个选题。
三、2012年9月13日—20日指导教师网上申报选题。
四、20112年9月21—9月28日学院在系统内审批教师所报选题,筛选不合要求
选题。
五、2012年10月9日——10月16日2013届本科毕业生网上选题。
六、2012年10月17日—24日指导教师撰写并向学生下达任务书。
七、2012年10月25日—11月7日学生与指导教师商定好研究内容与研究方法,完成开题报告及文献综述。
八、2012年11月8日—11日学院召开开题报告会进行毕业设计(论文)初期检查,主要检查指导教师任务书下达情况,学生文献综述、开题报告完成情况。
九、2012年11月16日—12月31日收集资料;学生阅读有关书籍、文章;设计
实验方案,记录实验数据;做好读书笔记、卡片;开展社会调查。
十、2013年3月1日前学生交初稿,交指导教师审阅,指导教师提出修改意见。
学生写作过程中要始终与指导教师保持联系、交流情况。
十一、2013年4月9日前交二稿,指导教师审阅、指导并提出修改意见。学生写
作过程中始终指导教师保持联系交流情况。
十二、2013年3月12日—3月20日,毕业设计(论文)中期检查。
十三、2013年4月30日前交定稿,指导教师写出评语,学生写作过程中始终指导
教师保持联系交流情况。
十四、2013年5月1日—4日学院组织评阅教师评阅,评阅教师写出评语。
十五、2013年5月(具体时间待定)学院组织学生答辩,给出毕业设计(论文)
成绩。
十六、2013年6月1日—8日成绩汇总,学院完成工作总结。
十七、2013年5月31日—6月4日学院推荐优秀毕业设计(论文),2013届毕业
设计(论文)工作总结。
通信与电子学院毕业设计工作领导小组
2012年6月
第四篇:2012届学生毕业设计(论文)工作实施方案
新能源科学与工程学院
2012届学生毕业设计(论文)工作实施方案
毕业设计(论文)是教学中的一个重要的实践性教学环节,对提高学生综合实践能力与素质,培养创新意识和能力等方面起着十分重要的作用。根据学校有关规定,为加强2012届学生毕业设计(论文)的管理,确保各环节的工作规范化,提高毕业设计(论文)质量,现将有关事宜通知如下:
一、前期工作
(一)组织领导
1.为加强对毕业设计(论文)工作的领导和管理,认真搞好各个环节的工作,确保毕业论文质量,新能源科学与工程学院成立分院毕业设计(论文)工作领导小组,此项工作于2011年9月3日前完成。
毕业设计(论文)工作领导小组构成人员如下: 组 长:廖卫兵、黄 勇
副组长:江训艳、刘 波、李水根、肖宗湖、詹长军 成 员:各教研室毕业设计(论文)指导教师
2.毕业设计(论文)工作领导小组在9月5日召开2012届毕业生毕业设计(论文)动员大会,做好学生的思想动员工作,宣布毕业设计(论文)要求及有关管理规定。每位学生都应独立完成毕业设计(论文)。
(二)选题工作
1.以教研室为单位布置教师提交毕业设计(论文)选题,要求每位教师选题数量不少于8个,并确保选题较去年有10%左右的更新,各教研室将选题汇总后于9月13日前上交分院教学管理科。
2.分院毕业设计(论文)工作领导小组召开毕业设计(论文)选题论证会,制定2012届学生的毕业设计(论文)选题目录,此项工作9月16日前完成。
3.根据分院分配的专业、班级,各教研室组织学生选题,确定指导教师。毕业设计(论文)指导教师原则上应由讲师以上职称的教师承担毕业设计(论文)的指导,且每位指导老师指导学生最多不超过20人,并争取做到“一人一题”。请各教研室9月23日前填写、上报《2012届学生毕业设计(论文)选题汇总表》。
(三)下达任务书
请各指导老师和参加毕业设计(论文)的学生到学校教务处网站上下载《毕业设计(论文)过程管理手册》电子档,指导教师填写“任务书”一栏,向学生下达任务书;学生必须按照指导老师的要求认真填写手册里面的内容并打印,论文完成后按顺序装订好交给指导老师。下达任务书工作于2011年10月1日前完成。
以班级为单位,统一到教务处实践教学科领取《毕业设计(论文)过程管理手册》封面(学生、指导教师每人一个),毕业设计(论文)封面(学生每人一个),毕业设计(论文)资料袋(学生每人一个)。
二、中期工作
(一)开题报告工作
请指导教师认真督促及指导学生在11月1日前完成毕业设计(论文)的开题报告工作,并填写“开题报告”一栏。(开题报告须经指导老师同意后方可正式填写)
(二)开展毕业设计(论文)指导及检查工作
1.各指导教师应按照学校、分院有关规定,做好指导工作,定期检查学生的工作进度和工作质量,及时解答和处理学生提出的有关问题。同时,还应做好“进展情况记录”栏的填写。各教研室要加强对指导老师工作进度的督促。
2.分院毕业设计(论文)领导小组定期对毕业设计(论文)的进展情况进行检查。
(三)毕业设计(论文)审查和评阅工作
1.学生毕业设计(论文)应于答辩前10天定稿,要求学生严格按学校统一规定的格式模版(包括封面和内芯)打印并装订毕业论文,指导教师进行审查和评分。
2.成立以教研室为单位的答辩工作小组,各答辩工作小组根据规范化要求认真做好毕业设计(论文)的形式审查工作,对达不到要求的学生,应令其返工;审查通过后,由答辩工作小组再交评阅教师评阅,并写出评语和评分(毕业论文答辩前5天完成)。
(四)答辩工作
1.答辩工作在一个星期内完成,各答辩工作小组在答辩前10天填写并上报《2012届学生毕业设计(论文)答辩安排表》。
2.答辩工作小组成员应详细审阅本组学生的毕业设计(论文),为答辨做好准备。3.各答辩工作小组应对学生逐个进行公开答辩并评分,并做好答辩记录。每组答辩教师及学生答辩完后应在记录上签字。答辩工作,在2010年5月10日前完成。
三、后期工作
(一)成绩评定
分院毕业设计(论文)工作领导小组对各答辩工作小组评分情况进行检查,不符合要求的,由主管教学的副院长组织整改。成绩评定应符合学校、分院有关规定的要求,答辩后立即进行。成绩评定后由各教研室汇总,填写《新余学院毕业设计(论文)成绩统计表》并上报分院审核。
(二)评选优秀毕业设计(论文)
答辩结束后一周内,各教研室应从本届毕业设计(论文)中按学生数的2%比例推荐参加分院优秀毕业设计(论文)评选。分院优秀毕业设计(论文)由各答辩工作小组提名并进行初评,填报《新能源科学与工程学院优秀毕业设计(论文)申报表》,会同学生毕业设计(论文)原件1份交分院教学管理科。分院教学管理科将组织专家评审,评出分院优秀毕业设计(论文),并上报学校参加校优秀毕业设计(论文)评选。
(三)工作总结与资料归档
1.各教研室负责人应认真做好工作总结,如实填写《毕业设计(论文)工作总结报告》并上报分院教学管理科。(此工作总结报告封面统一到教务处网页下载)
2.有关学生毕业论文(设计)全部资料(包括毕业设计(论文)过程管理手册、毕业设计(论文)文本、设计作品、光盘等,统一用学校毕业设计(论文)专用袋装订),由各教研室归档并上交分院教学管理科。
(四)毕业设计(论文)工作量的核算依据和毕业设计组织工作先进单位的评选原则 1.《新余学院毕业设计(论文)选题汇总表》、《新余学院毕业设计(论文)成绩汇总表》、《新能源科学与工程学院优秀毕业设计(论文)申报表》、《新能源科学与工程学院优秀毕业设计(论文)推荐表》、《毕业设计(论文)工作总结报告》是否按时按质上报。
2.《毕业设计(论文)过程管理手册》是否按时按质填写。3.学生毕业论文是否符合统一的、标准的格式和质量要求。4.毕业设计(论文)全部资料是否按要求归档。5.分院检查情况。
以上五条作为核算教师工作量的主要依据。没有按时按质完成各项工作的系将酌情扣减工作量。
四、注意事项
1.请各教研室认真组织教师和学生学习学校有关规定及学校有关毕业设计说明书与毕业论文撰写的规范化要求,学生的毕业论文一定要严格按照附件3《新余学院毕业设计(论文)书写式样》模版进行。
2.有关附件表格及文件均可在教务处网页上下载及浏览。3.各教研室在报送纸质材料的同时须交电子文档。
新能源科学与工程学院
2011-9-1
附:毕业论文(设计)写作及答辩时间安排如下:
1.2011年9月3日成了新能源科学与工程学院2012届毕业生毕业设计(论文)工作领导小组;
2.2011年9月5日召开2012届毕业生毕业设计(论文)动员大会;
3.2011年9月13日前,各教研室上交毕业设计(论文)选题到分院教学管理部门; 4.2011年9月16日前,毕业设计(论文)工作领导小组召开毕业设计(论文)选题论证会,制定2012届学生的毕业设计(论文)选题目录;
5.2011年9月23日前,各教研室上交《2012届学生毕业设计(论文)选题汇总表》到分院教学管理科;
6.2011年10月1日前,指导教师向学生下达任务书;
7.2011年11月1日前完成毕业设计(论文)的开题报告工作,并填写“开题报告”一栏; 8.2011年12月31日前,完成毕业设计(论文)初稿;
9.2012年4月6日前,完成毕业设计(论文)二稿;
10.2012年4月20日前,完成毕业设计(论文)三稿及打印稿,装订材料;
11.2012年5月1日,答辩工作小组填写并上报《2012届学生毕业设计(论文)答辩安排 表》;
12.2012年5月10日前,论文答辩,成绩评定,答辩地点由各答辩工作小组确定; 13.2012年5月17日前,新能源科学与工程学院优秀论文推荐;毕业论文工作总结;材料 归档工作。
第五篇:毕业设计(论文)
[在此处键入]
日照职业技术学院毕业设计(论文)
php许愿墙系统
学生姓名
院 部电子信息科学与工程学院 专 业计算机应用技术 指导老师
日 期 2015-05-19
目录
一 许愿墙简介..........................................................................................................................................4 二 许愿墙设计原理..................................................................................................................................4 三 四 五 PHP技术介绍...................................................................................................................................4 PHP技术优点...................................................................................................................................4 MYSQL介绍......................................................................................................................................6
六 许愿墙系统的概要设计......................................................................................................................6(一)系统开发环境...............................................................................................................................6(二)php语言选择...............................................................................................................................6(三)系统功能.......................................................................................................................................7 七 许愿墙详细设计..................................................................................................................................7(一)数据库设计...................................................................................................................................7(二)许愿墙数据库连接 写入和保存..................................................................................................8(三)许愿墙文件夹中文件的介绍.....................................................................................................13(四)许愿墙首页设计.........................................................................................................................13 八 许愿墙特色和不足............................................................................................................................15
第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系统。而我这次所开发的留言本系统,主要是利用PHP技术的简单和实用的特点,以及PHP使用的广泛性,而且非常适合于网络中小型系统开发。
第5页
五 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数据库。适用于IE4.0以上版本浏览器,Win2000+APACHE 或winxp+APACHE以上运行环境。(本人用的winxp+APACHE测试)。
(二)php语言选择
选择一个好的编程语言十分的重要,当前,面对众多的编程语言,很多人无从选择,而本人看到PHP的以上众多特点,个人认为:
MYSQL后台数据库+PHP服务器端程序+客户端IE浏览器,是一个精练实用高效的组合模式。在这种使用模式中,PHP程序无疑是最重要的,是沟通客户端和后台数据库之间的桥梁。在PHP程序中,通过数据库语言,建立对MYSQL数据库的连接,是客户能够访问后台数据库的前提。
鉴于前面介绍PHP优点的原因,又有上面组合的优势,本人的许愿墙使用PHP语言也是十分正确而实用的。
第6页
(三)系统功能
该许愿墙具有的主要功能如下:
1.可以按照发言时间的先后顺序,许愿墙自动排序; 2.许愿墙的主要栏目组成图
3.本许愿墙不需注册,陌生人即可留言。
七 许愿墙详细设计
有了技术和流程图以及许愿墙要实现的功能,接下来就应该进行详细设计了。数据库是首当其冲的,接下来就是用户常接触的首页的设计,然后就是该许愿墙特色功能的设计和实现。
(一)数据库设计
我的数据库采用的是MY SQL数据库,采用的原因也已经介绍了。以下就介绍许愿墙数据库的组成。
第7页
(二)许愿墙数据库连接 写入和保存
数据库链接失败!”;
exit();} mysql_select_db(“gbook”, $con);mysql_query(“set names 'gb2312'”);date_default_timezone_set(PRC);?>
$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'];
第8页
$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);?>
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;
第9页
$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);
}
}
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);}
第10页
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);
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')第11页
?
'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){
$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);}
第12页
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);
} } } ?>
(三)许愿墙文件夹中文件的介绍
有了数据库,就应该设计许愿墙的各个页面。本许愿墙由6个文件夹,11个文件组成,简单介绍各文件的作用:
index.PHP:许愿墙主页,主要功能是查看许愿,任何人都可以查看许愿信息。add.php添加愿望。footer.php页面尾部。head.php页面头部。list.php列表页面
message.htm首页留言贴样式
db_mysql.class.php.许愿墙与数据库的连接的文件。Css.css:本网站的样式控制。
(四)许愿墙首页设计
我许愿墙的首页文件index.PHP,功能主要是为访客留下相关的信息,并进行留言。
第13页
界面相对简单,但功能很实用!许愿墙的基本功能实现具体如下:
图7.1许愿首页
图7.2添加愿望
第14页
图7.3愿望列表
结束语:通过上面的介绍,相信对该许愿墙整体的构建和各项功能都有了一定的认识,最重要的是学会了许愿墙的设计以及类似网络的编程,更对实际操作和具体设计流程有了清晰的认识。该许愿墙实现了基本功能,并具有自己的特色,例如屏蔽关键字和防灌水功能。由于该许愿墙功能实用,而且界面友好,特别适合于中小型网站使用。对于刚刚接触网络编程人员的信心和兴趣也会有很大提高。
八 许愿墙特色和不足
特色:任何人都可以许愿,任何人都可以看到。无需注册和登录,完全开放。不足:没有添加管理员功能,队员王的管理功能较弱。
第15页