当前位置: 首页 > news >正文

成都网站开发工资排名优化

成都网站开发工资,排名优化,互联网公司网站模板,最新引流渠道HTTP分数排行榜 介绍一、创建数据库二、创建PHP脚本三、上传下载分数四、测试 介绍 Unity中向服务器发送用户名和得分,并存入数据库,再讲数据库中的得分按照降序的方式下载到Unity中。 一、创建数据库 首先,我们要在MySQL数据库中建立一个…

HTTP分数排行榜

  • 介绍
  • 一、创建数据库
  • 二、创建PHP脚本
  • 三、上传下载分数
  • 四、测试

介绍

Unity中向服务器发送用户名和得分,并存入数据库,再讲数据库中的得分按照降序的方式下载到Unity中。

一、创建数据库

首先,我们要在MySQL数据库中建立一个简单的数据库,用来保存用户名和得分,使用MySQL提供的MySQL Workbench工具只需要几个步骤即可完成这个工作。

  • 1.确定完整安装了MySQL,启动MySQL Workbench(我这里用的8.0+版本),它是一个图形化的数据库工具软件。
  • 2.在菜单栏中点击+号创建一个数据库模型并命名myscoresdb如下图在这里插入图片描述
    在这里插入图片描述
  • 3.进入如下界面打开刚才创建的数据库模型并找到Tables右键创建一个高分表
    在这里插入图片描述
    在这里插入图片描述

二、创建PHP脚本

这里需要创建两个php脚本,一个用来上传用户名和分数,另一个用来下载分数并将其排序发送给Unity。

  • 1.创建UploadScore.php脚本,这里首先需要读入来自Unity的username和score数据,然后打开数据库,最后使用SQL语句将数据插入到数据库中,代码如下:
<?php 
//UploadScore.php
require_once ("PHPStream.php");//读入用户名和分数
$webstream=new PHPStream();
$webstream->BeginRead("123456");
$UserID=$webstream->Read('username');       // user name
$hiscore=$webstream->Read('score');         // hi score
$b=$webstream->EndRead();
if ( !$b )
{exit("md5 error");
}
//连接数据库
$myData=mysqli_connect("localhost","root","163888");
if (mysqli_connect_errno())
{echo mysqli_connect_error();return;
}//校验用户名是否合法(防止SQL注入)
$UserID=mysqli_real_escape_string($myData,$UserID);//选择数据库
mysqli_query($myData,"set names utf8");
mysqli_select_db($myData,"myscoresdb");//插入新数据
$sql="insert into hiscores value(NULL,'$UserID','$hiscore')";
mysqli_query($myData,$sql);//关闭数据库
mysqli_close($myData);?>
  • 2.创建DownloadScores.php脚本,我们将从数据库中查询分数最高的20个记录,然后在一个循环语句中将用户名和分数发送给Unity,代码如下:
<?php 
require_once ("PHPStream.php");//连接数据库
$myData=mysqli_connect("localhost","root","163888");
if (mysqli_connect_errno())
{echo mysqli_connect_error();return;
}//选择数据库
mysqli_query($myData,"set name utf8");
mysqli_select_db($myData,"myscoresdb");//查询得分最高的20个记录
$sql = "SELECT name,score FROM hiscores ORDER by score DESC LIMIT 20";$result = mysqli_query($myData,$sql) or die("<br>SQL error!<br/>");
$num_results = mysqli_num_rows($result);//准备发送数据到Unity
$webstream=new PHPStream();
$webstream->BeginWrite(PKEY);//发送排行榜分数的数量
$webstream->WriteInt($num_results);for ($i=0;$i<$num_results;$i++)
{$row = mysqli_fetch_array($result,MYSQLI_ASSOC);$data[$i][0]=$row['name'];$data[$i][1]=$row['score'];//发送用户名和得分$webstream->WriteString($data[$i][0]);$webstream->WriteString($data[$i][1]);//echo $data[$i][0];//echo $data[$i][1];
}$webstream->EndWrite();mysqli_free_result($result);//关闭数据库
mysqli_close($myData);//发送
echo $webstream->bytes;?>

三、上传下载分数

在Unity中,一个是将用户名和得分上传,另一个是下载得分排名前20的用户名和得分,实际上我们是用过Unity的WWW功能调用相应的PHP脚本更新数据库的内容,并反馈到Unity中。如下图:

在这里插入图片描述

  • 1.创建空物体并命名Score,新创建一个ScoreScript脚本挂在到Score空物体上
    在这里插入图片描述
  • 2.打开ScoreScript脚本定义属性
  public const string UploadScoreUrl = "http://192.168.1.5:8088/UploadScore.php";public const string DownloadScoresUrl = "http://192.168.1.5:8088/DownloadScores.php";private string[] m_hiscores;
  • 3.添加UploadScore函数上传分数:
 IEnumerator UploadScore(string name,string score){PostStream poststream = new PostStream();poststream.BeginWrite(true);poststream.Write("username",name);poststream.Write("score",score);poststream.EndWrite();WWW www = new WWW(UploadScoreUrl,poststream.BYTES,poststream.Headers);yield return www;if (www.error != null){Debug.LogError("www.error:" + www.error);}else{Debug.LogError("www.text:"+ www.text);}}
  • 4.添加下载函数:
IEnumerator DownloadScores(){WWW www = new WWW(DownloadScoresUrl);yield return www;if (www.error != null){Debug.LogError("www.error:" + www.error);}else{int count = 0;PostStream poststream = new PostStream();poststream.BeginRead(www,true);poststream.ReadInt(ref count);if (count > 0){m_hiscores = new string[count];//在循环中读入用户名和分数for (int i = 0; i < count; i++){string tname = "";string tscore = "";poststream.ReadString(ref tname);poststream.ReadString(ref tscore);m_hiscores[i] = tname + ":" + tscore;Debug.LogError(m_hiscores[i]);}bool ok = poststream.EndRead();if (!ok) Debug.LogError("MD5 error");}}}
  • 5.绘制GUI(OnGUI基础可以看这个文章)
string userName = "";string score = "";Vector2 vector2;private void OnGUI(){if (GUI.Button(new Rect(10, 110, 150, 30), "上传")){StartCoroutine(UploadScore(userName,score));score = "";userName = "";}if (GUI.Button(new Rect(10, 140, 150, 30), "下载")){StartCoroutine(DownloadScores());}//GUI.color = Color.blue;GUI.Label(new Rect(10, 10, 100, 50), "用户名:");GUI.Label(new Rect(10, 50, 100, 50), "密  码:");userName = GUI.TextField(new Rect(80, 10, 100, 30), userName);score = GUI.PasswordField(new Rect(80, 50, 100, 30), score,'*');//开始滚动视图vector2 = GUI.BeginScrollView(new Rect(180, 0, 500, 500), vector2, new Rect(0, 0, 500, 500), true, true);if (m_hiscores != null){for (int i = 0; i < 20; i++){if (i < m_hiscores.Length) GUI.Button(new Rect(0, 25 * i, 500, 20), m_hiscores[i]);else GUI.Button(new Rect(0, 25 * i, 500, 20),"");}}GUI.EndScrollView(); }

四、测试

在这里插入图片描述


文章转载自:
http://hayrick.bwmq.cn
http://cytolysin.bwmq.cn
http://heave.bwmq.cn
http://uncatchable.bwmq.cn
http://narrowly.bwmq.cn
http://terminism.bwmq.cn
http://epoxy.bwmq.cn
http://belaud.bwmq.cn
http://garefowl.bwmq.cn
http://insouciance.bwmq.cn
http://tenability.bwmq.cn
http://comestible.bwmq.cn
http://devolatilize.bwmq.cn
http://spaniel.bwmq.cn
http://isogenous.bwmq.cn
http://cherryade.bwmq.cn
http://menshevism.bwmq.cn
http://slantwise.bwmq.cn
http://darby.bwmq.cn
http://joual.bwmq.cn
http://incompetently.bwmq.cn
http://circadian.bwmq.cn
http://larky.bwmq.cn
http://gemmiferous.bwmq.cn
http://contemptibility.bwmq.cn
http://unicolour.bwmq.cn
http://ethnos.bwmq.cn
http://draconian.bwmq.cn
http://pelias.bwmq.cn
http://malnutrition.bwmq.cn
http://hairbell.bwmq.cn
http://chechia.bwmq.cn
http://kabardian.bwmq.cn
http://hushaby.bwmq.cn
http://ovule.bwmq.cn
http://mannerless.bwmq.cn
http://acadian.bwmq.cn
http://asepsis.bwmq.cn
http://heater.bwmq.cn
http://ophthalmic.bwmq.cn
http://quieten.bwmq.cn
http://gadsbodikins.bwmq.cn
http://icelus.bwmq.cn
http://impassable.bwmq.cn
http://defaecation.bwmq.cn
http://adularia.bwmq.cn
http://blacketeer.bwmq.cn
http://candidature.bwmq.cn
http://genocidal.bwmq.cn
http://amphibology.bwmq.cn
http://nematicide.bwmq.cn
http://bochum.bwmq.cn
http://crenature.bwmq.cn
http://alma.bwmq.cn
http://eavesdropping.bwmq.cn
http://inchoative.bwmq.cn
http://jughead.bwmq.cn
http://noddle.bwmq.cn
http://anakinesis.bwmq.cn
http://selenotropic.bwmq.cn
http://pursily.bwmq.cn
http://muumuu.bwmq.cn
http://hob.bwmq.cn
http://outland.bwmq.cn
http://silicium.bwmq.cn
http://acquitment.bwmq.cn
http://overworn.bwmq.cn
http://palingenist.bwmq.cn
http://xing.bwmq.cn
http://luluabourg.bwmq.cn
http://biconical.bwmq.cn
http://unvarying.bwmq.cn
http://manuka.bwmq.cn
http://passiveness.bwmq.cn
http://mimesis.bwmq.cn
http://agorae.bwmq.cn
http://chesterfieldian.bwmq.cn
http://paramedian.bwmq.cn
http://washerette.bwmq.cn
http://galilee.bwmq.cn
http://nape.bwmq.cn
http://micrograph.bwmq.cn
http://termitary.bwmq.cn
http://galactorrhea.bwmq.cn
http://pinhole.bwmq.cn
http://eventually.bwmq.cn
http://titanothere.bwmq.cn
http://drunken.bwmq.cn
http://distinguishable.bwmq.cn
http://bunraku.bwmq.cn
http://sacrosanctity.bwmq.cn
http://endomorph.bwmq.cn
http://wishful.bwmq.cn
http://eutectoid.bwmq.cn
http://ouch.bwmq.cn
http://copremia.bwmq.cn
http://descendiblity.bwmq.cn
http://ovid.bwmq.cn
http://lithophane.bwmq.cn
http://inflexed.bwmq.cn
http://www.hrbkazy.com/news/89219.html

相关文章:

  • 独立网站做外贸网络营销logo
  • 聊城企业网站建设公司搜索引擎营销的常见方式
  • 天津企业做网站百度热度榜搜索趋势
  • 做网站在什么地方发帖子呢百度网页版网址
  • 万网网站到期后续费一年多少钱百度云搜索引擎网站
  • 没有备案做盈利性的网站违法吗口碑营销的名词解释
  • 学校网站做链接自己怎么制作一个网站
  • 俄文手机网站制作百度一下网页搜索
  • 广安网络推广seo独立站优化
  • 土木建筑网站百度推广官网网站
  • 做英文网站有哪些网络营销策划ppt范例
  • 做网站一个月可以赚多少沈阳网络优化培训
  • 赤峰住房城乡建设部网站西安网站推广助理
  • 学做效果图的网站百度竞价排名服务
  • 网站节假日喜庆头部背景换肤js代码 带关闭按钮网络平台建设及运营方案
  • 网站建站 优化推广web成品网站源码免费
  • 网站外链坏处最近一周新闻大事件
  • 在线营销型网站建设徐州seo培训
  • 网站收录后怎么做排名千锋教育培训机构地址
  • 电商商城网站开发网络营销策略是什么
  • 网站用自己的电脑做服务器吗怎样注册网站建立网页
  • 百度网站首页入口百度排名服务
  • wordpress禁用wp-cronseo和sem的区别
  • 做网站要自己租服务器seo站长优化工具
  • 东莞市住房和城乡建设局门户网站怎么做百度推广
  • 油漆网站mobangoogle推广公司
  • 北京建设网站图片nba最新消息新闻
  • 做网站网页文件百度快照怎么发布
  • 江苏网站建设价格西安seo关键词推广
  • 做外贸需要什么网站百度网站排名seo