[转载]Unity 3D同PHP数据交互案例
来源:互联网 发布:dwg for mac 免费 编辑:程序博客网 时间:2024/05/22 22:43
1,创建一个数据库表,使用MySql数据库.创建代码如下:
CREATE TABLE `scores` ( `id` INT( 10 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`name` VARCHAR( 30 ) NOT NULL ,
`password` VARCHAR( 50 ) NOT NULL
) ENGINE = innodb;
2,向数据库表中插入内容:
INSERT INTO `scores` ( `id` , `name` , `password` )
VALUES (
NULL , 'haiweisky', MD5( 'aaaaaa' )
);
3,创建一个验证用户基本信息的PHP页面,页面名字是:check_scores.php
//
$host = "localhost"; //主机名
$user = "root"; //用户名
$password = ""; //密码
$dbname = "unity3dTest"; //数据库名称
mysql_connect($host, $user, $password) or die("Cant connect into database");
mysql_select_db($dbname)or die("Cant connect into database");
// =============================================================================
// PROTECT AGAINST SQL INJECTION and CONVERT PASSWORD INTO MD5 formats
function anti_injection_login_senha($sql, $formUse = true)
{
$sql = preg_replace("/(from|select|insert|delete|where|drop table|show tables|,|'|#|*|--|\\)/i","",$sql);
$sql = trim($sql);
$sql = strip_tags($sql);
if(!$formUse || !get_magic_quotes_gpc())
$sql = addslashes($sql);
$sql = md5(trim($sql));
return $sql;
}
// THIS ONE IS JUST FOR THE NICKNAME PROTECTION AGAINST SQL INJECTION
function anti_injection_login($sql, $formUse = true)
{
$sql = preg_replace("/(from|select|insert|delete|where|drop table|show tables|,|'|#|*|--|\\)/i","",$sql);
$sql = trim($sql);
$sql = strip_tags($sql);
if(!$formUse || !get_magic_quotes_gpc())
$sql = addslashes($sql);
return $sql;
}
// =============================================================================
$unityHash = anti_injection_login($_POST["myform_hash"]);
$phpHash = "hashcode"; // same code in here as in your Unity game
$nick = anti_injection_login($_POST["myform_nick"]); //I use that function to protect against SQL injection
$pass = anti_injection_login_senha($_POST["myform_pass"]);
if(!$nick || !$pass) {
} else {
}
// Close mySQL Connection
mysql_close();
?>
4,新建一个Unity 3D项目,命名为myGame;新建一个Javascript文件,命名为phpUnity(点击Project面板上的Create按钮,点击Javascript,产生一个新的javascript,按F2为其命名为phpUnity).
private var formNick = ""; //登录名
private var formPassword = ""; //密码
var formText = ""; //根据判断显示信息
var yyyskin:GUISkin;
var URL = "http://localhost/unity_test/check_scores.php"; //提交的URL地址
var hash = "hashcode"; //change your secret code, and remember to change into the PHP file too
private var textrect = Rect (10, 150, 500, 100); //just make a GUI object rectangle
function OnGUI() {
//same as above, but for password
}
function Login() {
5.
- [转载]Unity 3D同PHP数据交互案例
- 【转】Unity 3D同PHP数据交互案例
- Unity 3D同PHP数据交互案例
- 【转】Unity 3D 引擎中数据交互问题
- Unity和PHP的Http数据交互
- (转载)Unity 3d连接mysql
- MVC-UIView同数据交互
- 【转载】Unity 隱藏3D模型及 GetComponentsInChildren 的使用
- unity 3D c# 协程的典型用法-Unity官方案例精讲笔记
- knockoutjs php 数据交互
- 简单的蓝牙数据交互案例
- 初试Unity 3D——飞盘射击案例(3)
- 初识Unity 3D——飞盘射击案例(1)
- 初始Unity 3D——飞盘射击案例(2)
- Ajax+PHP简单数据交互
- PHP与memcache数据交互
- Unity 3D
- unity 3d 注意事项
- BroadCastReceiver详解
- JS中获取session中传过来的值对象
- 通过SUBMIT获取ALV GRID的数据
- 六十道煲汤做法
- SharePoint 2013 + Windows server 2012 Search service错误:Unable to retrieve topology component health
- [转载]Unity 3D同PHP数据交互案例
- xcode常用的快捷键
- 简单工厂模式、工厂方法模式、反射工厂模式、抽象工厂模式
- Android 打电话、浏览网页等Uri操作
- 模拟Home按键
- Hadoop在MapReduce中使用压缩详解
- ffmpeg分析系列之一(注册编解码器)
- 莫名其妙在js中function处提示missing(before function parameters错误
- 模拟一致性读实验时常用到的脚本