




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数据库系统课程设计报告题目:天下Movie微信公众号课程代号: 0686416 课程名称:数据库系统课程设计学号:_ _姓名:_ _ 完成日期:2016年10月29号第一章 引言1.1设计开发的意义2016年是社交网络爆发的一年,手机则是社交网络重要的通信工具,而微信是手机成为重要工具中主要的一部分。我们针对微信平台开发微信公众号的开发是为了让学生的编程技术顺应时代潮流,不拘泥于课本知识,了解现实社会生活中客户需求,更好的提高自己的技术。同时,也从编程角度深刻感受到了社交网络带给我们的便利。我们的选题其中主要内容展示是电影。电影市场在2016年由疯狂趋于理性,大家更注重于电影的质量,所以我们选
2、择了“天下Movie”这样的课题,既能提升我们的编程水平,又能贴近生活,服务大家。1.2任务及目标项目的提出者:天津理工大学计算机与通信工程学院课题开发组。开发单位:13级中加6班项目小组。任务:建立一个服务电影爱好者的微信公众号,在新浪云建立后台数据库,响应微信公众号的请求。目标:微信公众号可以实现电影的搜索,电影查询,留影评。主要功能:电影搜索功能;电影排行榜查询功能;留影评。可用性:很高,基本满足需求。安全性:很高,云端数据库只有我们2个人才能操作。注册用户只能对自己部分数据进行修改删除等操作。可维护性:云端维护,有网即可,比较方便。可跨平台性:移植性较强。可针对不同要求的微信公众号。1
3、.3开发环境操作系统:windows 10编译环境:使用html,CSS,微信测试号进行UI开发使用Mysql进行数据库管理第二章 系统分析与设计2.1系统需求分析2.1.1 处理需求1 用户订阅我们的微信公众号,公众号自动表示感谢;2 用户点击微信公众号菜单栏进行电影搜索和电影排行查询;3 用户点击微信公众号菜单栏登录微网站进行留影评,并对影评经行增删改查等操作;4 用户点击微信公众号菜单栏,公众号自动回复消息:加入我们的微信群,并提供群二维码;2.1.1 数据流图2.1.2 数据字典m_movie表欄位型態Null預設值註解movieIDint(11)否电影idmovievarchar(2
4、55)否电影名datedate否发行日期countryvarchar(255)否国家lengthvarchar(255)否时长scorefloat否评分intromediumtext是NULL简介awardmediumtext是NULL所获奖项moviepicvarchar(255)是NULL电影图片m_dist表欄位型態Null預設值註解distIDint(11)否发行商iddistvarchar(255)否发行商名m_dist_m表欄位型態Null預設值註解movieIDint(11)否电影iddistIDint(11)否发行商idm_dire表欄位型態Null預設值註解direIDint
5、(11)否导演iddirevarchar(255)否导演名m_dire_m表欄位型態Null預設值註解movieIDint(11)否电影iddireIDint(11)否导演idm_class表欄位型態Null預設值註解classIDint(11)否类型idclassvarchar(255)否类型m_class_m表欄位型態Null預設值註解movieIDint(11)否电影idclassIDint(11)否类型idm_actor表欄位型態Null預設值註解actorIDint(11)否演员idactorvarchar(255)否演员名m_act_m表欄位型態Null預設值註解movieIDin
6、t(11)否电影idactorIDint(11)否演员idc_user表欄位型態Null預設值註解userIDint(255)否用户idusernamevarchar(255)否用户名passwordvarchar(255)否密码emailvarchar(255)是NULL邮箱c_comm表欄位型態Null預設值註解commIDint(11)否留言iduserIDint(11)否用户idtimedatetime否最后更新时间titletext否标题commtext否留言内容2.2 数据库概念结构设计E-R图2.3数据库逻辑结构设计电影电影id,电影名,发行日期,国家,时长,评分,简介,所获奖项
7、,相关图片演员演员id,演员名演员对应演员id,电影id导演导演id,导演名导演对应导演id,电影id发行商发行商id,发行商名发行商对应发行商id,电影id类型类型id,类型名类型对应类型id,电影id用户信息用户id,用户名,密码,邮箱留言信息留言id,用户id,最后更新时间,标题,留言内容2.4 数据库物理结构设计m_movie表m_dist表m_dist_m表m_dire表m_dire_m表m_actor表m_act_m表m_class表m_class_m表c_comm表c_user表2.5 功能图第三章 系统开发及实现3.1论述设计开发采用的技术及设计效果3.1.1微信界面 功能:微
8、信用户关注公众号,公众号向用户发送信息。以及菜单栏显示。界面设计效果:实现方法:在新浪云(SAE)端上传代码包index.php.zip,代码配置微信接口,实现微信公众号和新浪云数据库的链接。3.1.2电影区-搜电影 功能:点击电影去搜电影,进入电影搜索界面界面设计效果:实现:编写search.html,然后上传到新浪云端,在浏览器显示,用query.php链接新浪云的Mysql数据库去查寻具体电影名字。功能:展示具体电影的内容界面设计效果:实现:编写concent.html,然后上传到新浪云端,在浏览器显示,用conn.php调用数据库显示出要查找电影的具体内容。3.1.3电影区-查询排行榜
9、 功能:实现电影按照排行榜进行查询,可以按类型,可以按评分和年代进行排序。界面设计效果:实现:编写list.php,然后上传到新浪云端,在浏览器显示出要查找电影的具体内容。3.1.3互动区-评电影功能:用户的注册登录界面设计效果:实现:编写login.html和login.php实现用户的注册、登陆。用户登陆后调用loged.php使用户可以留言。3.1.4互动区-微信群功能:让微信公众号开发人员和用户有良好的互动界面设计效果:实现:在新浪云端的index.php文件中设置返回参数,用户点击查看全文即可看到我们的群二维码。第四章 总结这次课程设计学校安排了2周时间让我们完成,我们选择了“电影推
10、荐:微信公众号-天下Movie”的课题,并从图书管借了数据库程序设计、HTML设计、php的资料书,对课程设计中会遇到的问题提前做了些准备,并到网上也找相关的系统的代码看了下,对这个系统有了一定的全局观,完成了初步的需求分析。稍作细化后,便开始设计数据库。而后做了界面设计,完成了程序大部分的主要界面。我们从系统的功能、规模和实用方面考虑,采用HTML+Mysql技术。在数据库设计阶段:细致的考虑到了用户的全部需求,并用了大量的时间进行了信息的收集建立了比较完善的信息表;编码阶段:在设计接近完成的时候,我们对部分代码做了优化,对界面效果进行了调整。这次课程设计,我更加深入的了解到软件工程的复杂性
11、,以及前期规划分析的重要性。以及团队协作的重要性,决定在以后的学习中学习一些先进的思想,并多加实践,从写程序和软件架构两个方面都增强自己的能力。在编程中遇到了很多困难,我们在立项时候因为没有接触过微信开发,并不了解微信平台是需要开发权限的,使我们走了弯路;在UI设计时候,我们的界面功能经过了反复的修改,在一定程度上延缓了设计进程。网页显示在页面上回进行转码,与我们设想的有差别。我们没有使用响应式开发设计是我们的一大缺陷,这直接影响了用户体验。通过这次的数据库课程,我学会了在制作程序时应仔细谨慎,因为细小的错误都会导致程序的失败。另外老师还教会了我们,在制作一个系统时,要有自己的思想,使自己制作
12、的程序能锦上添花,做出属于自己的东西。我也会在以后的生活学习中尽量完善自己的工作,使自己做的更好!第五章 参考文献1 方倍工作室微信公众平台开发(58)自定义菜单方倍工作室 - 博客园/txw1958/2013-08-09 2菜鸟教程HTML/CSSw3cschool菜鸟教程 /3美Robert W.Sebesta 著 马跃 李增民 李立新 译 Web程序设计(第7版) 清华大学出版社4 PHP官方网站 /5 Jeffrey D.Ullman Jennifer Widom 著 数
13、据库系统基础教程 机械工业出版社附录 1 conn.php附录 2 index.phpresponseMsg();else $wechatObj-valid();class wechatCallbackapiTest public function valid() $echoStr = $_GETechostr; if($this-checkSignature() echo $echoStr; exit; private function checkSignature() $signature = $_GETsignature; $timestamp = $_GETtimestamp; $no
14、nce = $_GETnonce; $token = TOKEN; $tmpArr = array($token, $timestamp, $nonce); sort($tmpArr); $tmpStr = implode( $tmpArr ); $tmpStr = sha1( $tmpStr ); if( $tmpStr = $signature ) return true; else return false; public function responseMsg() $postStr = $GLOBALSHTTP_RAW_POST_DATA; if (!empty($postStr)
15、$postObj = simplexml_load_string($postStr, SimpleXMLElement, LIBXML_NOCDATA); $RX_TYPE = trim($postObj-MsgType); switch ($RX_TYPE) case text: $resultStr = $this-receiveText($postObj); break; case event: $resultStr = $this-receiveEvent($postObj); break; default: $resultStr = ; break; echo $resultStr;
16、 else echo ; exit; private function receiveEvent($object) $contentStr = ; switch ($object-Event) case subscribe: $contentStr = 你好,欢迎订阅天下Movie!点击菜单栏的“电影区可以进行电影搜索和电影排行榜查询”,点击“互动区可以加入微信群和留影评哦!”/微笑; case unsubscribe: break; case CLICK: switch ($object-EventKey) case 微信群: $contentStr = array(Title =微信群,
17、Description =爱好电影小伙伴们欢迎你来!, PicUrl =/image/1.jpg, Url =/image/weixinqun.jpg);/待定 break; default: $contentStr = array(Title =评电影, Description =大胆的发表您的评价吧, PicUrl =/image/pj.jpg, Url =http:/tianxiamovie.applin
18、/login.html);/待定 break; break; default: break; if (is_array($contentStr) $resultStr = $this-transmitNews($object, $contentStr); else $resultStr = $this-transmitText($object, $contentStr); return $resultStr; private function transmitText($object, $content, $funcFlag = 0) $textTpl = %s%d; $resul
19、tStr = sprintf($textTpl, $object-FromUserName, $object-ToUserName, time(), $content, $funcFlag); return $resultStr; private function transmitNews($object, $arr_item, $funcFlag = 0) /首条标题28字,其他标题39字 if(!is_array($arr_item) return; $itemTpl = ; $item_str = ; foreach ($arr_item as $item) $item_str .= s
20、printf($itemTpl, $itemTitle, $itemDescription, $itemPicUrl, $itemUrl); $newsTpl = %s%s$item_str%s; $resultStr = sprintf($newsTpl, $object-FromUserName, $object-ToUserName, time(), count($arr_item), $funcFlag); return $resultStr; ?附录 3 search.html天下Movie 附录 4 query.php 天下Movie img src= width=300px he
21、ight=400px while($rowb=mysqli_fetch_assoc($resultb) print_r($rowbdire); echo /; ? while($rowa=mysqli_fetch_assoc($resulta) print_r($rowaactor); echo /; ? while($rowc=mysqli_fetch_assoc($resultc) print_r($rowcdist); echo /; ? $classid=$_GETclass;$time=$_GETtime;$score=$_GETscore;if (isset($classid) $
22、sql=SELECT movie FROM m_movie WHERE movieID IN(select movieID from m_class_m where classID=$classid); if ($score=ASC|$score=DESC) $sql=SELECT * FROM m_movie ORDER BY m_movie.score $score ; if ($time=ASC|$time=DESC) $sql=SELECT * FROM m_movie ORDER BY m_movie.date $time ; $result=mysqli_query($con,$sql);$count=mysqli_num_rows($result);$page_size=5;$page_count=ceil($count/$page_size); $init=1; $page_len=4; $max_p=$page_count; $pages=$page_count; /判断当前页码 if(empty($_GETpage)|$_GETpage a href=query.php?search= ?php
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 应急安全教育培训感想课件
- 2023年度重庆资源与环境保护职业学院单招《物理》全真模拟模拟题附参考答案详解【完整版】
- 2024施工员题库附答案详解(夺分金卷)
- 计算机四级真题(能力提升)附答案详解
- 2025年咨询工程师高分题库【原创题】附答案详解
- 私人之间供货合同(标准版)
- 授权公司合同(标准版)
- 农业土地租赁合同(标准版)
- 订购门窗合同(标准版)
- 2025年中级软考综合提升测试卷完整附答案详解
- 北京地区建筑地基基础勘察设计准则
- 任务1 混合动力汽车动力系统基本组成与原理
- DB34-T 4860-2024 农贸市场建设规范
- 《除得尽吗》课件
- 北师大版小学数学四年级上册第3单元 乘法《有多少名观众》公开教学课件
- DL∕T 976-2017 带电作业工具、装置和设备预防性试验规程
- 光伏电站的运维项目方案
- 认定露天煤矿重大隐患 培训课件2024
- 危重患者的早期识别
- 兽药产品知识讲座
- 《神经学习与记忆》课件
评论
0/150
提交评论