Want to access a PHP file on a webserver while running Unity? Here is how
in the example below I am getting the player name for Quests of Crocania..This is named getname.js and is a script in unity. I placed it in a folder called webscripts and attach it to the player
Code: Select all
function Awake () {
getname();   
}
function getname()
{
var formText = new Array(); //this field is where the messages sent by PHP script will be in
var inctext;
var URL = "http://localhost/crocania/getmethods/webgetname.php"; //change for your URL
      var w = WWW(URL); //here we create a var called 'w' and we sync with our URL and the form
   yield w; //we wait for the form to check the PHP file, so our game dont just hang
   if (w.error != null) {
      print(w.error); //if there is an error, tell us
   } else {
     
	  inctext = w.text;
       formText = inctext.Split(":"[0]); 
////////////create variables from DB
	  GameObject.Find ("Playername").guiText.text=""+formText[0];
	  
	  
	  w.Dispose(); //clear our form in game
   }
}I then have a file on my localhost in the directory of /crocania/getmethods/ called webgetname.php
Code: Select all
<?php
include_once '../connect.php';
session_start();
?>
<?php 
    $player=$_SESSION['player'];
echo $player;
?>Now you are asking.."Well what about multiple variables from one call...Well ole Halls has got you covered!
this is how I grab all the players skills
this is a file called webgetskills.js and is also a unity .js file
Code: Select all
function Awake () {
getskills();   
}
function getskills()
{
var formText = new Array(); //this field is where the messages sent by PHP script will be in
var inctext;
var URL = "http://localhost/crocania/webgetskills.php"; //change for your URL
      var w = WWW(URL); //here we create a var called 'w' and we sync with our URL and the form
   yield w; //we wait for the form to check the PHP file, so our game dont just hang
   if (w.error != null) {
      print(w.error); //if there is an error, tell us
   } else {
     
	  inctext = w.text;
       formText = inctext.Split(":"[0]); 
////////////create variables from DB
var miningskill = formText[2];
var forestryskill = formText[1];
var harvestskill = formText[3];
var searchskill = formText[4];
//////put variables on GUI
guiText.text=""+forestryskill;
	  GameObject.Find ("MiningText").guiText.text=""+miningskill;
	  GameObject.Find ("Playername").guiText.text=""+formText[0];
	  GameObject.Find ("Harvesttext").guiText.text=""+harvestskill;
	  GameObject.Find ("Searchtext").guiText.text=""+searchskill;
	  
	  
	  w.Dispose(); //clear our form in game
   }
}Code: Select all
<?php
include_once 'connect.php';
session_start();
?>
<?php if (isset($_SESSION['player'])) 
  {
    $player=$_SESSION['player'];
    $playerinfo="SELECT * from players where name='$player'";
    $playerinfo2=mysql_query($playerinfo) or die("Could not get user stats");
    $playerinfo3=mysql_fetch_array($playerinfo2);
    
	
	 }
	else
	{
	print "Sorry, not logged in  please <A href='login.php'>Login</a><br>";
 exit;}
echo $playerinfo3['name'];
echo ":";
echo $playerinfo3['Forestry'];
echo ":";
echo $playerinfo3['Mining'];
echo ":";
echo $playerinfo3['Harvest'];
echo ":";
echo $playerinfo3['Search'];
?>Simple as that!!!
result








