PHP-课程设计-LOL英雄资料网站
1. 项目链接:PHP-课程设计-LOL英雄资料网站-PHP文档类资源-CSDN下载
2. 项目视频:基于HTML+PHP+Jquery的LOL英雄资料网站_哔哩哔哩_bilibili
3. 项目简介:
该项目作为大二下学期Jquery课程设计 模仿英雄联盟官方网站的英雄资料、英雄详情、装备和召唤师页面
主要模块如下
英雄页面:英雄列表、增加英雄、删除英雄、分类查询英雄、模糊查询英雄
英雄详情页面:英雄皮肤轮播效果、英雄属性值、英雄背景故事
装备页面: 装备列表、装备信息、分类查询装备、模糊查询装备
召唤师技能页面:召唤师技能列表、召唤师技能切换查看
知识点:用Ajax、Jquery实现动态效果,PHP访问json数据处理数据,WampServer当服务器解释php
4. 项目功能简要
项目运行要求:我写的是仿LOL英雄资料的界面,数据都是动态的,依靠php来读取,需运行在Wampserver64上才有效果,或者你的机器上必须装上服务器和PHP。
目录
功能一:图片轮播
功能二:AJAX案列,展示英雄
功能三:AJAX案列,英雄分类和查询指定英雄
功能四:AJAX案列
功能五:AJAX案列,删除英雄
功能六:AJAX案列,添加英雄
功能七:AJAX案列+图片提示案例,装备\召唤师技能
功能一:图片轮播
说明:用图片轮播实现了英雄皮肤切换效果
效果图:
实现Jquery代码:
// 点击皮肤图像,显示相应皮肤$('.heroskinheadul li').on('click',function(){// 皮肤层的ulvar $ul = $('.heroskinul');var w = 1240;// 1.获取到这个li的下标var idx = $(this).index();var left = -idx * wif(idx == 0){left = 0;}// 2.让ul往左移动多少left$ul.stop().animate({'left':left}, 500);// 3.让兄弟取消选中的样式,自己选中的样式$(this).addClass("current").siblings().removeClass("current");});
功能二:AJAX案列,展示英雄
说明:根据ajax请求php返回json英雄数据,实现了英雄数据显示
效果图:
实现Jquery代码:
// 用ajax获取英雄数据// 根据type来分英雄,0是全部,1是战士,2是法师,3是刺客// 封装成方法// tag 0是查询,1是添加,2是删除 没用var curtype = 0;function getHeroList(ty, na, tg){curtype = ty;$.ajax({ url:'php/lol_hero_list_get.php',type: 'GET',data: {type:ty,name:na, tag:tg},success:function(data,stutas,xhr){var iso = data.status;if(iso == "error"){alert(data.info);return;}var $lidiv = "";if(data.data.length == 0){$('.herotxul').html("未搜索到符合条件的英雄,请重新输入");}else{// 英雄列表显示$('.herotxul').show();// 添加div隐藏$('.addherodiv').hide();for(var i = 0; i < data.data.length; i++){var himg = data.data[i].champion_icon;var hname = data.data[i].champion_name;// 组成$lidiv += '<li><a><img onclick="test(\''+hname+'\')" src="'+himg+'"/></a><a class="heronamea as">'+hname+'</a><a class="dela as">删除</a></li>';}$('.herotxul').html($lidiv);$('.dela').hide();}}})}
功能三:AJAX案列,英雄分类和查询指定英雄
说明:ajax请求php传入参数,根据分类显示不同类型的英雄,和输入英雄名查找指定英雄。
效果图:
根据“刺客”分类
查找有“亚”字的英雄
实现Jquery代码:
主要jquery代码与功能二相同,那个函数封装了.
// 切换选择不同英雄类型 start-------------------$(".selitem").click(function(){$(this).addClass("selcuritem").siblings().removeClass("selcuritem");// 根据下标,不同,访问不同类型英雄var idx = $(this).index();switch(idx){case 0:getHeroList(0, '', 0);break;case 1:getHeroList(1, '', 0);break;case 2:getHeroList(2, '', 0);break;case 3:getHeroList(3, '', 0);break;case 4:getHeroList(4, '', 0);break;case 5:getHeroList(5, '', 0);break;case 6:getHeroList(6, '', 0);break;}});// 切换选择不同英雄类型 end-------------------// 监听输入的英雄名,后台查找出来$('#findinput').keyup(function(){var val = $(this).val();getHeroList(curtype, val, 0);});
功能四:AJAX案列
说明:根据点击不同英雄头像展示相应英雄的背景故事、英雄属性、英雄皮肤。
效果图:
实现jquery代码:
这个没有jquery代码,是用php直接获取数据的
功能五:AJAX案列,删除英雄
说明:ajax请求php删除英雄,php实则对文件内容进行删除
效果图:
实施删除
删除完成
实现PHP代码:
这是用php实现的
<?php// 设置返回的是 jsonheader('content-type:application/json;charset=utf-8');$filedir = "../phpdata/data_lol_list.php";//1.获取到传入的name$name = $_GET['name'];//2.获取文件字符串$st = file_get_contents($filedir);//3.进行截取// 得到前半部分$qst = substr($st, 0, strpos($st, $name));// 得到后半部分$hst = substr($st, strpos($st, $name));// 前半部分找最后一个array位置$qst = substr($qst, 0, strrpos($qst, 'array'));// 后半部分找第一个array位置// 最后一个没有arrayif(strpos($hst, 'array')){$hst = substr($hst, strpos($hst, 'array'));}else{$hst = substr($hst, strrpos($hst, ',') + 1);}// 组成新string 加上前缀$qianzhui = '<?php$heroListArr =';$newst = $qst.$hst;//4.输入到回文件中$fp = fopen($filedir, "w+");fwrite($fp, $newst);//5.关闭fclose($fp);sleep(1);//6.结束 返回echo json_encode(array('status'=>'success','info'=>'success'));?>
功能六:AJAX案列,添加英雄
说明:ajax请求php,根据选择的英雄图片和英雄名称,进行添加英雄功能
效果图:
实现php代码:
<?php$name = $_POST['heroname'];$upfile = $_FILES['heroimg'];$imgdir = 'upimg/'.iconv("UTF-8","GBK",$upfile['name']);// 保存至临时文件move_uploaded_file($upfile['tmp_name'], '../'.$imgdir);// 字符串需要保存到list php文件中$fp = fopen("../phpdata/data_lol_list.php", "r+");$flag = fseek($fp, -5, SEEK_END);$flag = fwrite($fp,'array("champion_icon"=> "'.$imgdir.'","champion_name"=>"'.$name.'","type"=>"0"),)?>');fclose($fp);if ($flag) {header("Location: ../hero_list.html");} else {echo "添加失败";}?>
功能七:AJAX案列+图片提示案例,装备\召唤师技能
说明:装备和召唤师技能也都是通过ajax访问php返回相应数据
装备:
召唤师技能:
大致实现代码与上面功能二,功能三大致相同。
Div跟踪鼠标jquery代码:
// 鼠标放在图片上 显示详细$('.herotxul').on("mouseenter", "li", function(e){// 显示$('#hint').show();// 给定位$('#hint').css({"top" : (e.pageY + 10)+"px","left": (e.pageX + 10)+"px"});//获取值getEquipOne($(this).find(".as").text());});$('.herotxul').on("mouseleave", "li", function(e){$('#hint').hide();});// 默认隐藏$('#hint').hide();
- 项目的整体显示截图
项目结构:
项目运行:
PHP-课程设计-LOL英雄资料网站相关推荐
- 【毕业设计_课程设计】位置信息管理网站设计(源码+论文)
文章目录 0 项目说明 1 研究目的 2 研究方法 3 系统实现 4 界面展示 5 论文目录 6 项目源码 0 项目说明 位置信息管理网站设计 提示:适合用于课程设计或毕业设计,工作量达标,源码开放 ...
- javaweb课程设计 实现天猫购物网站(前端+后端)
javaweb课程设计 项目演示:http://www.swuzhouliang.top:8080/javawork/index/(请使用谷歌浏览器,可使用测试账号登录) 用户名:test 密码:12 ...
- c语言八个方向迷宫课程设计,【精品资料最新版】C语言课程设计-迷宫游戏.doc...
计算机技术基础课程设计 C语言 设计报告 题目:完整的二维迷宫游戏 学院:工商管理学院 专业:信息系统与信息管理 班级:050507 姓名:孙月 指导教师:张首伟 设计日期:2004年12月10日 题 ...
- 订单管理系统c语言课程设计,C语言课程设计订单管理系统资料.doc
PAGE 41 C语言课程设计 随米打印订单管理系统 学 院: 计算机与信息科学学院 学生姓名: 谢润发 指导教师: 王新祥 职称 教授 专 业: 网络工程 班 级: 1501 完成时间: 2016- ...
- php网页设计课程设计dreamweaver8_Dreamweaver8+PHP动态网站开发从入门到精通(附光盘)...
第一部分 Dreamweaver基础知识回顾 第1章 Dreamweaver 8简介 1.1 Dreamweaver 8的新功能 1.2 安装和运行Dreamweaver 8 1.3 Dreamwea ...
- 大数据期末课程设计实验案例:网站用户行为分析实验环境
(没有配置,只有实验软件压缩包) 以上完整配置的实验环境,有需要可以私信. 以下是完整配置的结果测试命令ssh localhost cd /usr/local/hadoop ./sbin/start- ...
- 大数据期末课程设计实验案例:网站用户行为分析
参考来源:https://zhuanlan.zhihu.com/p/591381719
- 课程设计-ASP.NET作文网站
1.主要功能: 展示各种类型的作文.普通用户的登录注册和管理员用户登录.可以精确或模糊按照作文题目搜索.还有分页功能,首页.尾页.上一页.下一页.返回顶部等等很多功能. 普通用户登录:发表作文,管理自 ...
- Web课程设计案例(简单实现网站)
技术选型:springboot,mybatis-plus,mysql,bootsrap,ajax等 源码地址:秃头老表 / 医者仁心 · GitCode 项目实现:用户登录注册,会员注册,普通,会员, ...
最新文章
- 用C写有面向对象特点的程序
- 我是怎样成长为系统架构师的
- 关于在SVG中如何实现gif动画的问题?
- pandas.Series.multiply()含义解释
- Ubuntu/Debian交叉编译安装ARM平台版本的ffmpeg
- 2018年C语言期末考试题及答案,HZNUOJ--2018年秋季学期程序设计基础(C语言)期末考试(补题)...
- 如何在MVC中下载模板和上传word文件
- rust物资刷新机制_rust资源刷新 | 手游网游页游攻略大全
- 设计模式六大原则——合成/聚合复用原则(CARP)
- 学习cairo的心得及资料
- LeetCode.623 Add One Row to Tree
- 腾讯即时通信 tim-sdk.js功能扩展
- svn设置文件提交过滤
- 统计名著中汉字出现频率
- Linux——磁盘Part 4:磁盘阵列(raid0、raid1、raid5、raid6、raid1+0)
- saveOrUpdate Transaction silently rolled back because it has been marked as rollback-only
- Matlab 读取 pcd 文件
- 初学者刚开始如何正确运行pycharm
- 高焕堂《嵌入式UML设计》读书笔记_第三章
- mysql自动匹配数据,excel自动从数据库匹配相应的数据:excel导入表格
热门文章
- 限流——漏桶算法和令牌桶算法的区别
- matlab中函数的定义和使用
- mandrake安装INTEL e1000网卡驱动
- 怎样识别图片中的文字?手机电脑都可以的
- 试证明:已知二叉树的前序序列和中序序列,可以唯一确定该二叉树
- 【Puzzle】基于 Vue 和 Webpack4 的可插拔式微前端架构
- 1的平方加2的平方一直加到n的平方
- 【内附独家PPT】CynosDB for MySQL 计算存储分离架构的实现和优化
- 为撒电大计算机专业学籍出来的慢,2019年电大学历提升的学籍在什么情况发生时会取消...
- UBUNTU ROS 编译后无法rosrun package文件(已解决)