Unity+php+mysql

Der Hauptprozess ist: Unity greift über die WWW-Klasse auf das Hintergrund-PHP-Skript zu und betreibt MySQL im PHP-Skript.

Installation von Apache (integriertes MySQL, PHP):

Bitte beachten Sie nach der Installation: Das LAN ist standardmäßig nicht zugänglich. Sie müssen httpd.conf unter wamp\bin\apache\apache2.2.8\conf\ und phpmyadmin.confAllow von 127.0.0.1 unter wamp\alias\ in Allow from all ändern;

Starten Sie Wamp neu, dann kann auch auf das LAN zugegriffen werden. Auf die mit einem Klick von Wamp erstellte Umgebung kann auch von außen zugegriffen werden, und auch auf den Android-Test kann zugegriffen werden.

PHP-Skript:

<?php

$connect =mysql_connect("127.0.0.1","root","");
if($connect==0)	
{
 echo "SORRY SCORE SERVER CONNECTION ERROR";
}
echo "OK";

mysql_select_db("数据库名字",$connect);
$user_name=$_POST["name"];
$user_score=$_POST["score"];
$sql ="INSERT INTO 表名字(name,score)";
$sql .=" VALUES('".$user_name."',".$user_score.")";
$result=mysql_query($sql,$connect);

if($result){
	echo "save Ok";
	
}
else echo "save error";
mysql_close($connect);
?>

C#-Skript:

 private string url= "http://127.0.0.1/save_score.php";
    //保存分数的协程
    public IEnumerator SaveScore(string name,int fenshu) {
        WWWForm form = new WWWForm();
        form.AddField("name",name);
        form.AddField("score", fenshu);

        WWW www = new WWW(url,form);
        yield return www;
        if (string.IsNullOrEmpty(www.error))
        {
            Debug.Log(www.text);
        }
        else
        {
            Debug.Log(www.error);
        }
    }

PHP-Skript

<?php

$connect =mysql_connect("10.10.10.18","root","");
if($connect==0)	
{
 echo "SORRY SCORE SERVER CONNECTION ERROR";
}
//echo "OK";

mysql_select_db("unity3dzsb",$connect);

$sql ="SELECT *from score";

 $result=mysql_query($sql,$connect);


 $rows=array();

 $return=array();

  while($row=mysql_fetch_array($result)){	 	
  $rows["name"]=$row['name'];	
  $rows["score"]=$row['score'];
  array_push($return,$rows);	
  }
echo json_encode($return);
mysql_close($connect);
?>


C#-Skript:

using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
using LitJson;//需要引入这个dll文件
 private string url2 = "http://127.0.0.1/get_score.php";
    public IEnumerator GetAllScore() {

        WWW www = new WWW(url2);
        yield return www;
        if (string.IsNullOrEmpty(www.error))
        {
            Debug.Log(www.text);
            getScore(www.text);
        }
        else
        {
            Debug.Log(www.error);
        }
    }

    public void getScore(string strJson) {
        JsonData jd = JsonMapper.ToObject(strJson);      
        for (int i = 0; i < jd.Count; i++)
        {
            Debug.Log(jd[i]["name"]);
            Debug.Log(jd[i]["score"]);         
        }
    } 


 

Supongo que te gusta

Origin blog.csdn.net/hemiaoyuan1989/article/details/53291687
Recomendado
Clasificación