Unity通过Php访问MySql
来源:互联网 发布:广西广电网络初装费用 编辑:程序博客网 时间:2024/06/03 12:34
1.上网下载一个PHPNOW,文件包非常小,但是功能却很强大(下载链接 http://pan.baidu.com/s/1bnpjwUN)。
2.安装PHPNOW,注意不要有中文路径,安装方法也很简单,解压后双击Init.cmd根据提示做就可以。
3.安装后可以在浏览器上输入:localhost/index.php,浏览器会打印出PHPNOW的相关配置信息。
4.安装Dreamweaver CS6,用于编写php代码。
5.使用phpMyAdmin登录数据库,在浏览器中输入localhost/phpMyAdmin
导入一个数据库:附件中有
添加一个用户:用户名和密码要与unity中的登录名和密码一致:wenjian 、1234
6.Unity代码编写
using UnityEngine;using System.Collections;using System.Xml;using System.IO;using System.Collections.Generic;public class ConnectPhpAndMySql : MonoBehaviour {// Use this for initializationstring url = "http://localhost/ConnectMySql/UnityGetUserMessage.php";//userdata的数据。private XmlNodeList xmlList;private List<string[]> UserMessage=new List<string[]>();void Start () {}// Update is called once per framevoid Update () {}void OnGUI(){
<span style="white-space:pre"></span>//登录数据库if(GUI.Button(new Rect (10, 100, 100, 20), "Login")) {WWWForm form = new WWWForm();form.AddField("Flat","Login");form.AddField("Name", "wenjian");form.AddField("Password", "1234");WWW www = new WWW(url, form);StartCoroutine(LoginPhp(www));}
<span style="white-space:pre"></span>//获取内容if(GUI.Button(new Rect (10, 150, 100, 20), "GetMessage")){WWWForm form = new WWWForm();form.AddField("Flat","GetMessage");form.AddField("Name", "wenjian");form.AddField("Password", "1234");form.AddField("Start_int", "2");form.AddField("End_int", "5");WWW www = new WWW(url, form);StartCoroutine(GetMessagePhp(www));}
<span style="white-space:pre"></span>//插入一行数据if(GUI.Button(new Rect(10,200,100,20),"InsertMessage")){WWWForm form = new WWWForm();form.AddField("Flat","InsertMessage");form.AddField("Name", "wenjian");form.AddField("Password", "1234");form.AddField("Message", "Insert,he,wen,jian");WWW www = new WWW(url, form);StartCoroutine(InsertMessagePhp(www));}<span style="white-space:pre"></span>//更新一行内容if(GUI.Button(new Rect(10,250,100,20),"UpdateMessage") ){WWWForm form = new WWWForm();form.AddField("Flat","UpdateMessage");form.AddField("Name", "wenjian");form.AddField("Password", "1234");form.AddField("Id", "3");form.AddField("Setdata", "lkj");WWW www = new WWW(url, form);StartCoroutine(UpdateMessagePhp(www));}
<span style="white-space:pre"></span>//删除一行内容if(GUI.Button(new Rect(10,300,100,20),"DeleteMessage") ){WWWForm form = new WWWForm();form.AddField("Flat","DeleteMessage");form.AddField("Name", "wenjian");form.AddField("Password", "1234");form.AddField("Id", "2");WWW www = new WWW(url, form);StartCoroutine(DeleteMessagePhp(www));}}IEnumerator LoginPhp(WWW www){yield return www;Debug.Log(www.text);//string[] songNames = www.text.Split(',');}
<span style="white-space:pre"></span>//把数据与mxl的形式进行数据分析IEnumerator GetMessagePhp(WWW www){Debug.Log (Time.time);yield return www;Debug.Log(www.text);XmlDocument xmlDoc = new XmlDocument();string aa=@"<?xml version=""1.0"" encoding=""UTF-8""?> ";aa += www.text;Debug.Log(aa);xmlDoc.LoadXml(www.text);//root = xmlDoc.SelectSingleNode("myRoot");xmlList=xmlDoc.SelectNodes("myRoot/Message");Debug.Log ("UserData.length=" + xmlList.Count);Debug.Log("------"+xmlList[0].InnerText);for(int jj=0;jj<xmlList.Count;jj++){ string strAge = xmlList[jj].InnerText; string[] arr=strAge.Split(',');Debug.Log ("UserData=" + strAge);UserMessage.Add(arr);}Debug.Log("========"+UserMessage[0].Length);for(int i=0;i<UserMessage.Count;i++){for(int j=0;j<UserMessage[i].Length;j++){Debug.Log(UserMessage[i][j]);}}//foreach(XmlElement xmlElement1 in xmlList)//{//XmlNodeList xmlNodeList1= xmlElement1.ChildNodes;////string str;//XmlNodeList subAgeNodes = ((XmlElement)xmlElement1).GetElementsByTagName("td"); //for(int jj=0;jj<subAgeNodes.Count;jj++)// { //string strAge = subAgeNodes[jj].InnerText; //Debug.Log ("UserData=" + strAge);//} //}//string[] songNames = www.text.Split(',');Debug.Log (Time.time);}IEnumerator InsertMessagePhp(WWW www){yield return www;Debug.Log(www.text);}IEnumerator UpdateMessagePhp(WWW www){yield return www;Debug.Log(www.text);}IEnumerator DeleteMessagePhp(WWW www){yield return www;Debug.Log(www.text);}}7.PHP代码
<?phpfunction LoginMySql(){ $name= $_REQUEST['Name']; $password = $_REQUEST['Password']; $connect = mysql_connect('localhost', $name, $password) or die('数据库连接失败: ' . mysql_error());//echo '<BR><b>第一步:</b>成功建立连接! '; mysql_query("set names utf8;");$db = 'samples';mysql_select_db($db) or die('Could not select database ('.$db.') because of : '.mysql_error());//echo '<b>第二步:</b> 成功连接到 ('.$db.') !</BR>';//echo "\n";}function GetMySqlMessage(){echo "<myRoot>\n";$List='userdata';$Start_int=$_REQUEST['Start_int'];//echo $Start_int;$End_int=$_REQUEST['End_int'];//echo $End_int;//$query="SELECT * FROM '$List' limit '$start_int','$End_int'";$query="SELECT * FROM $List limit $Start_int,$End_int"; //echo $query;$result = mysql_query($query) or die('Query failed: ' . mysql_error());$count = 0;while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {$str=""; echo "\t<Message>\n"; foreach ($line as $col_value) { // echo "\t\t<td>$col_value</td>\n"; /* if($col_value==null||$col_value=="") { $str=$str."".","; continue; } */ $str=$str.$col_value.","; } echo $str; $count++; echo "\t</Message>\n";}echo "</myRoot>\n";}function InsertMessage(){$Message=$_REQUEST['Message'];//插入一行内容$result="INSERT INTO userdata (Data1,Data2,Data3,Data4 ) VALUES (";$arr=explode(',', $Message);$int=0;$int_end=count($arr);echo count($arr);echo "\n";for($int=0;$int<$int_end-1;$int++){$result=$result."'".$arr[$int]."'".",";}$result=$result."'".$arr[$int_end-1]."'";$result=$result.")";echo $result;echo "\n";$result="INSERT INTO userdata (Data1,Data2,Data3,Data4 ) VALUES ('$arr[0]','$arr[1]','$arr[2]','$arr[3]')";echo $result;echo "\n";//mysql_query($result)or die('insert error'.mysql_error());mysql_query($result)or die('insert error'.mysql_error());}function UpdateMessage(){$Id=$_REQUEST['Id'];$Setdata=$_REQUEST['Setdata'];mysql_query("update userdata SET Data1 = '$Setdata' WHERE Id = '$Id' ") or die('set Error: ' . mysql_error());}function DeleteMessage(){$Id=$_REQUEST['Id'];//删除 fname='wenjian' and lname='31'mysql_query("delete from userdata where Id='$Id' ") or die('delete Error: ' . mysql_error());}?><?php$flat=$_REQUEST['Flat'];switch($flat){case 'Login':LoginMySql();echo "Login";break;case'GetMessage':LoginMySql();GetMySqlMessage();break;case "InsertMessage":LoginMySql();InsertMessage();break;case "UpdateMessage":LoginMySql();UpdateMessage();break;case"DeleteMessage":LoginMySql();DeleteMessage();break;}?>
附件:
http://download.csdn.net/download/he_wen_jian/8218495#6874737-tsina-1-16206-3048ae643c93bac2c9a415075e9789bc
0 0
- Unity通过Php访问MySql
- Android通过PHP访问MySQL数据库
- Android客户端通过PHP访问MySQL数据库
- Unity通过代理访问Assetstore
- 通过IP访问MYsql
- php访问mysql
- PHP访问MySQL数据库
- php 中访问mysql
- PHP访问MySQL数据库
- php访问mysql例子
- PHP访问Mysql(代码)
- PHP访问MySQL数据库
- php 访问mysql
- PHP访问MySQL数据库
- PHP访问MySql数据库
- php访问mysql
- php访问mysql数据库
- PHP访问MySql数据库
- PCA人脸识别 MATLAB 源代码
- java实现N皇后迭代算法
- 美文摘录
- 【读书笔记】《推荐系统(recommender systems An introduction)》第一章 引言
- HDU 1063 Exponentiation&&POJ 1001 Exponentiation
- Unity通过Php访问MySql
- 背包问题--求第K大值
- MySQL错误积累-持续更新
- 反编译apk
- Android之创建选项菜单
- 汇编实验(三)
- Stay hungry, stay foolish
- Hadoop读书笔记(十二)MapReduce自定义排序
- 答辩周年记------与刚入职场/即将答辩的程序猿们共勉