文章目录
一. 前言
项目经常要打app包,为了统计打包信息,决定写个web服务器,unity打包的时候,post打包信息到web服务器记录下来,方便查看打包信息。
二. web服务器环境搭建
用PHPStudy搭建,方便,见我这篇文章
https://linxinfa.blog.csdn.net/article/details/103033142
三. MysqL数据库
1. 连接MysqL
注:我是windows操作系统
进入PHPstudy_pro/Extensions/MysqL
目录,打开命令行工具,cd到当前路径,连接数据库
MysqL -h localhost -u root -p
2. 创建数据库
create database mygame_db
3. 选择数据库
use mygame_db
4. 创建table
create table pack_info(
id int(11) primary key auto_increment,
server_type varchar(30),
channel varchar(30),
version varchar(30),
pack_user varchar(30),
pack_time timestamp not null default Now());
四. PHP代码
pack_info.PHP
,把PHP代码放在PHP的WWW目录中
<?PHP
$dbhost = 'localhost';
$dbuser = 'root';
$dbpw = '123456';
$dbname = 'mygame_db';
$tablename = 'pack_info';
$conn = MysqLi_connect($dbhost, $dbuser, $dbpw);
if($conn) {
echo('connect MysqL successfully<br>');
}
$sql = 'use ' . $dbname;
if(MysqLi_query($conn, $sql)){
echo('use db successfully<br>');
}
$server_type = $_POST['server_type'];
$channel = $_POST['channel'];
$version = $_POST['version'];
$pack_user = $_POST['pack_user'];
if("" != $server_type)
{
$sql = 'insert into ' . $tablename . '(server,channel,version,pack_user) values("' . $server_type . '","' . $channel . '","' . $version . '","' . $pack_user . '")' ;
if(MysqLi_query($conn, $sql)){
echo("insert successfully");
}
else{
echo("insert error" . MysqLi_error($conn) . "<br>");
}
}
$result = MysqLi_query($conn, 'select * from ' . $tablename);
echo('<table border ="1">');
echo('<tr>');
echo('<td>id</td>');
echo('<td>server</td>');
echo('<td>channel</td>');
echo('<td>version</td>');
echo('<td>pack_user</td>');
echo('<td>pack_time</td>');
echo('</tr>');
while($row = MysqLi_fetch_array($result))
{
echo('<tr>');
echo('<td>' . $row['id'] . '</td>');
echo('<td>' . $row['server'] . '</td>');
echo('<td>' . $row['channel'] . '</td>');
echo('<td>' . $row['version'] . '</td>');
echo('<td>' . $row['pack_user'] . '</td>');
echo('<td>' . $row['pack_time'] . '</td>');
echo('</tr>');
}
MysqLi_close($conn);
?>
五. c#上报打包信息
static void PostPackInfo2WebServer(string server, string channel, string version)
{
string url = "http://192.168.0.110:8089/pack_info.PHP";
string ret = string.Empty;
string paramData = string.Format("server_type={0}&channel={1}&version={2}&pack_user={3}", server, channel, version, SystemInfo.deviceName);
try
{
byte[] byteArray = Encoding.UTF8.GetBytes(paramData);
HttpWebRequest webReq = (HttpWebRequest)WebRequest.Create(new Uri(url));
webReq.Method = "POST";
webReq.ContentType = "application/x-www-form-urlencoded";
webReq.ContentLength = byteArray.Length;
Stream newStream = webReq.GetRequestStream();
newStream.Write(byteArray, 0, byteArray.Length);
newStream.Close();
HttpWebResponse response = (HttpWebResponse)webReq.GetResponse();
StreamReader sr = new StreamReader(response.GetResponseStream(), Encoding.Default);
ret = sr.ReadToEnd();
sr.Close();
response.Close();
newStream.Close();
}
catch(Exception ex)
{
Debug.LogError(ex);
}
Debug.Log(ret);
}
六. 上报完信息,访问网站测试
在浏览器中访问http://192.168.0.110:8089/pack_info.PHP
可以看到了一条打包信息,打了一个哔哩哔哩渠道的包
七. MySQL命令补充
1. 表中增加一列
# 在一个已经建好的表中添加一列
alter table TABLE_NAME add column NEW_COLUMN_NAME varchar(45) not null;
# 在指定的一列之后添加一列
alter table TABLE_NAME add column NEW_COLUMN_NAME varchar(45) not null after COLUMN_NAME;
# 添加一列到第一列
alter table TABLE_NAME add column NEW_COLUMN_NAME varchar(45) not null first;
2. 表中删除某列
alter table TABLE_NAME drop column COLUMN_NAME;
2. 删除表
drop table TABLE_NAME ;
3. 清空表格数据
truncate table TABLE_NAME;
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。